From 283c7a6a67ad4e9396be6fb6fb0b4ad310958f35 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 25 Nov 2024 10:15:03 -0500 Subject: [PATCH 01/37] Format Files to Follow Spacing Rules --- .../vcell/client/FieldDataWindowManager.java | 1302 +++--- .../vcell/field/gui/FieldDataGUIPanel.java | 3481 ++++++++--------- .../field/db/FieldDataDBOperationDriver.java | 1017 ++--- 3 files changed, 2870 insertions(+), 2930 deletions(-) diff --git a/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java b/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java index 3cd80e4ee4..5bac904246 100644 --- a/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java +++ b/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java @@ -10,40 +10,6 @@ package cbit.vcell.client; -import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.event.ActionEvent; -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.beans.PropertyVetoException; -import java.lang.reflect.Field; -import java.util.Hashtable; -import java.util.List; -import java.util.Map; -import java.util.Vector; - -import javax.swing.JPanel; -import javax.swing.ListSelectionModel; - -import cbit.vcell.solver.*; -import org.vcell.util.DataAccessException; -import org.vcell.util.Issue; -import org.vcell.util.IssueContext; -import org.vcell.util.Matchable; -import org.vcell.util.UserCancelException; -import org.vcell.util.document.BioModelInfo; -import org.vcell.util.document.ExternalDataIdentifier; -import org.vcell.util.document.KeyValue; -import org.vcell.util.document.MathModelInfo; -import org.vcell.util.document.ReferenceQueryResult; -import org.vcell.util.document.ReferenceQuerySpec; -import org.vcell.util.document.User; -import org.vcell.util.document.VCDocument; -import org.vcell.util.document.Version; -import org.vcell.util.document.VersionableRelationship; -import org.vcell.util.document.VersionableType; -import org.vcell.util.document.VersionableTypeVersion; - import cbit.image.VCImageUncompressed; import cbit.rmi.event.DataJobEvent; import cbit.rmi.event.DataJobListenerHolder; @@ -71,643 +37,645 @@ import cbit.vcell.math.MathDescription; import cbit.vcell.math.VariableType; import cbit.vcell.math.VolVariable; -import cbit.vcell.simdata.ClientPDEDataContext; -import cbit.vcell.simdata.DataIdentifier; -import cbit.vcell.simdata.DataListener; -import cbit.vcell.simdata.OutputContext; -import cbit.vcell.simdata.PDEDataContext; -import cbit.vcell.simdata.PDEDataManager; +import cbit.vcell.simdata.*; +import cbit.vcell.solver.*; import cbit.vcell.solvers.CartesianMesh; +import org.vcell.util.*; +import org.vcell.util.document.*; -public class FieldDataWindowManager - extends TopLevelWindowManager - implements PropertyChangeListener,FieldDataDBEventListener,DataJobListenerHolder{ - - public interface DataSymbolCallBack { - void createDataSymbol(ExternalDataIdentifier dataSetID,String fieldDataVarName,VariableType fieldDataVarType,double fieldDataVarTime); - } - - private FieldDataGUIPanel fieldDataGUIPanel; - private ExternalDataIdentifier currentlyViewedEDI; - private OutputFunctionViewer currentlyViewedOutputFunctionViewer; - - - public FieldDataWindowManager(FieldDataGUIPanel fdgp, RequestManager requestManager){ - super(requestManager); - fieldDataGUIPanel = fdgp; - requestManager.getDocumentManager().addFieldDataDBListener(this); - } - public FieldDataGUIPanel getFieldDataGUIPanel(){ - return fieldDataGUIPanel; - } - @Override - public Component getComponent() { - return fieldDataGUIPanel; - } - - @Override - public String getManagerID() { - return ClientMDIManager.FIELDDATA_WINDOW_ID; - } - - @Override - public boolean isRecyclable() { - return true; - } - - public void deleteExternalDataIdentifier(ExternalDataIdentifier deleteExtDataID) throws DataAccessException{ - getRequestManager().getDocumentManager().fieldDataDBOperation( - FieldDataDBOperationSpec.createDeleteExtDataIDSpec(deleteExtDataID)); - if(deleteExtDataID.equals(currentlyViewedEDI)){ - viewData(null); - } - } - public RequestManager getLocalRequestManager(){ - return getRequestManager(); - } - public void updateJTree(){ - fieldDataGUIPanel.updateJTree(getRequestManager()); - } - - - public ClientPDEDataContext getPDEDataContext(ExternalDataIdentifier eDI,OutputContext outputContext) throws DataAccessException{ - return - ((PDEDataManager)getRequestManager().getDataManager(outputContext, eDI, true)).getPDEDataContext(); - } - -public void viewData(final ExternalDataIdentifier eDI){ - - ChildWindowManager childWindowManager = ChildWindowManager.findChildWindowManager(getComponent()); - if(eDI != null && eDI.equals(currentlyViewedEDI) && childWindowManager != null && childWindowManager.getChildWindowFromContext(eDI) != null){ - childWindowManager.getChildWindowFromContext(eDI).show(); - } else { - if(currentlyViewedOutputFunctionViewer != null){ - if(getLocalRequestManager() != null && getLocalRequestManager().getAsynchMessageManager() != null){ - getLocalRequestManager().getAsynchMessageManager().removeDataJobListener(currentlyViewedOutputFunctionViewer.getPDEDataViewer()); - } - if(currentlyViewedOutputFunctionViewer != null){ - currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext().removePropertyChangeListener(this); - } - } - if(currentlyViewedOutputFunctionViewer != null){ - ChildWindow childWindow = childWindowManager.getChildWindowFromContext(eDI); - if (childWindow!=null){ - childWindow.close(); - } - } - currentlyViewedEDI = null; - currentlyViewedOutputFunctionViewer = null; - if(eDI == null){ - return; - } - - AsynchClientTask task1 = new AsynchClientTask("retrieve data", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - - @Override - public void run(Hashtable hashTable) throws Exception { - ClientPDEDataContext newPDEDataContext = getPDEDataContext(eDI,new OutputContext(new AnnotatedFunction[0])/*(currentlyViewedOutputFunctionViewer==null?null:currentlyViewedOutputFunctionViewer.getOutputContext())*/); - hashTable.put("newPDEDataContext", newPDEDataContext); - } - }; - AsynchClientTask task2 = new AsynchClientTask("show data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - - @Override - public void run(Hashtable hashTable) throws Exception { - try{ - PDEDataViewer currentlyViewedPDEDV = new PDEDataViewer(); - ClientPDEDataContext newPDEDataContext = (ClientPDEDataContext)hashTable.get("newPDEDataContext"); - currentlyViewedPDEDV.setPdeDataContext(newPDEDataContext); - newPDEDataContext.addPropertyChangeListener(FieldDataWindowManager.this); - getLocalRequestManager().getAsynchMessageManager().addDataJobListener(currentlyViewedPDEDV); - currentlyViewedOutputFunctionViewer = new OutputFunctionViewer(currentlyViewedPDEDV, FieldDataWindowManager.this,eDI); - - DataViewerManager dvm = new DataViewerManager(){ - public void dataJobMessage(DataJobEvent event){ - } - public void exportMessage(ExportEvent event){ - } - public void addDataListener(DataListener newListener){ - } - public UserPreferences getUserPreferences(){ - return getRequestManager().getUserPreferences(); - } - public void removeDataListener(DataListener newListener){ - } - public void startExport(Component requester,OutputContext outputContext,ExportSpecs exportSpecs){ - getLocalRequestManager().startExport(outputContext, requester, exportSpecs); - } - public void simStatusChanged(SimStatusEvent simStatusEvent) { - } - public User getUser() { - return getRequestManager().getDocumentManager().getUser(); - } - public RequestManager getRequestManager() { - return FieldDataWindowManager.this.getRequestManager(); - } - }; - - try { - currentlyViewedPDEDV.setDataViewerManager(dvm); - } catch (PropertyVetoException e) { - e.printStackTrace(); - } - - ChildWindowManager childWindowManager = ChildWindowManager.findChildWindowManager(getComponent()); - currentlyViewedEDI = eDI; - ChildWindow childWindow = childWindowManager.addChildWindow(currentlyViewedOutputFunctionViewer, currentlyViewedEDI, "Field Data Viewer ("+eDI.getName()+")"); - childWindow.setSize(600,500); - childWindow.setIsCenteredOnParent(); - childWindow.show(); - - } catch (Exception e){ - if(currentlyViewedOutputFunctionViewer != null){ - if(getLocalRequestManager() != null && getLocalRequestManager().getAsynchMessageManager() != null){ - getLocalRequestManager().getAsynchMessageManager().removeDataJobListener(currentlyViewedOutputFunctionViewer.getPDEDataViewer()); - } - if(currentlyViewedOutputFunctionViewer != null){ - currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext().removePropertyChangeListener(FieldDataWindowManager.this); - } - } - throw e; - } - } - }; - ClientTaskDispatcher.dispatch(this.getComponent(), new Hashtable(), new AsynchClientTask[] {task1, task2}, false); - } -} -private static class OutputFunctionViewer extends JPanel{ - private PDEDataViewer pdeDataViewer; - private OutputFunctionsPanel outputFunctionsPanel; - private Geometry geom; - private MathDescription mathDescription; - private ExternalDataIdentifier edi; - private FieldDataWindowManager fieldDataWindowManager; - public OutputFunctionViewer(final PDEDataViewer pdeDataViewer,FieldDataWindowManager fieldDataWindowManager,ExternalDataIdentifier edi) throws Exception{ - this.pdeDataViewer = pdeDataViewer; - this.edi = edi; - this.fieldDataWindowManager = fieldDataWindowManager; - this.outputFunctionsPanel = new OutputFunctionsPanel(); - CartesianMesh cartesianMesh = pdeDataViewer.getPdeDataContext().getCartesianMesh(); - VCImageUncompressed vcImage = new VCImageUncompressed(null, new byte[cartesianMesh.getNumVolumeElements()], cartesianMesh.getExtent(), cartesianMesh.getSizeX(),cartesianMesh.getSizeY(),cartesianMesh.getSizeZ()); - this.geom = new Geometry("temp",vcImage); - this.mathDescription = new MathDescription("temp"); - mathDescription.setGeometry(geom); - setMathDescVariables(); - this.pdeDataViewer.setSimNameSimDataID(new SimNameSimDataID("temp", new VCSimulationIdentifier(edi.getKey(), edi.getOwner()),null)); - this.pdeDataViewer.setSimulationModelInfo(new SimulationModelInfo() { - - @Override - public String getVolumeNamePhysiology(int subVolumeID) { - // TODO Auto-generated method stub - return "volPhysiology"; - } - - @Override - public String getVolumeNameGeometry(int subVolumeID) { - // TODO Auto-generated method stub - return "volGeometry"; - } - - @Override - public String getSimulationName() { - // TODO Auto-generated method stub - return "simName"; - } - - @Override - public String getMembraneName(int subVolumeIdIn, int subVolumeIdOut, boolean bFromGeometry) { - // TODO Auto-generated method stub - return "membraneName"; - } - - @Override - public String getContextName() { - // TODO Auto-generated method stub - return "contextName"; - } - - @Override - public DataSymbolMetadataResolver getDataSymbolMetadataResolver(){ - return pdeDataViewer.getSimulationModelInfo().getDataSymbolMetadataResolver(); - } - - @Override - public boolean isSpringSaLad() { - return false; - } - }); - - SimulationOwner simulationOwner = new SimulationOwner.FieldDataSimOwner() { - private OutputFunctionContext outputFunctionContext = new OutputFunctionContext(this); - { - outputFunctionContext.addPropertyChangeListener(new PropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent evt) { - final String PDEDC_KEY = "PDEDC_KEY"; - AsynchClientTask task1 = new AsynchClientTask("getPDEDataContext...",AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - @Override - public void run(Hashtable hashTable) throws Exception { - OutputContext outputContext = OutputFunctionViewer.this.getOutputContext(); - ClientPDEDataContext pdeDataContext = OutputFunctionViewer.this.fieldDataWindowManager.getPDEDataContext(OutputFunctionViewer.this.edi,outputContext); - hashTable.put(PDEDC_KEY, pdeDataContext); - } - }; - AsynchClientTask task2 = new AsynchClientTask("setPDEDataContext...",AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - @Override - public void run(Hashtable hashTable) throws Exception { - OutputFunctionViewer.this.pdeDataViewer.setPdeDataContext((ClientPDEDataContext)hashTable.get(PDEDC_KEY)); - setMathDescVariables(); - } - }; - ClientTaskDispatcher.dispatch(OutputFunctionViewer.this, new Hashtable(), new AsynchClientTask[] {task1,task2},true,false,false,null,true); - } - }); - } - - @Override - public void removePropertyChangeListener(PropertyChangeListener listener) { - // TODO Auto-generated method stub - System.out.println("somebody remove mysimowner listener "+listener); - } - - @Override - public Geometry getGeometry() { - // TODO Auto-generated method stub - return geom; - } - - @Override - public void addPropertyChangeListener(PropertyChangeListener listener) { - // TODO Auto-generated method stub - System.out.println("somebody add mysimowner listener "+listener); - - } - - @Override - public void removeSimulation(Simulation simulation) - throws PropertyVetoException { - // TODO Auto-generated method stub - - } - - @Override - public Simulation[] getSimulations() { - // TODO Auto-generated method stub - return null; - } - - @Override - public OutputFunctionContext getOutputFunctionContext() { - // TODO Auto-generated method stub - return outputFunctionContext; - } - - @Override - public MathOverridesResolver getMathOverridesResolver() { - return null; - } - - @Override - public String getName() { - // TODO Auto-generated method stub - return "temp"; - } - - @Override - public MathDescription getMathDescription() { - // TODO Auto-generated method stub - return mathDescription; - } - - @Override - public Simulation copySimulation(Simulation simulation) - throws PropertyVetoException { - // TODO Auto-generated method stub - return null; - } - @Override - public Issue gatherIssueForMathOverride(IssueContext issueContext, Simulation simulation, String name) { - // TODO Auto-generated method stub - return null; - } - - /** - * @throws UnsupportedOperationException (always) - */ - @Override - public UnitInfo getUnitInfo() throws UnsupportedOperationException { - throw new UnsupportedOperationException(); - } - }; - VCDocument fakeVCDocument = new VCDocument(){ - - @Override - public boolean compareEqual(Matchable obj) { - // TODO Auto-generated method stub - return false; - } - - @Override - public String getDescription() { - // TODO Auto-generated method stub - return null; - } - - @Override - public VCDocumentType getDocumentType() { - // TODO Auto-generated method stub - return null; - } - - @Override - public String getName() { - // TODO Auto-generated method stub - return null; - } - - @Override - public Version getVersion() { - // TODO Auto-generated method stub - return null; - } - - @Override - public void refreshDependencies() { - // TODO Auto-generated method stub - - } - - @Override - public void setDescription(String description) - throws PropertyVetoException { - // TODO Auto-generated method stub - - } - - @Override - public void setName(String newName) throws PropertyVetoException { - // TODO Auto-generated method stub - - } - - @Override - public void gatherIssues(IssueContext issueContext, List issueList) { - // TODO Auto-generated method stub - - } - - }; - DocumentWindowManager documentWindowManager = new DocumentWindowManager(pdeDataViewer, fieldDataWindowManager.getRequestManager(), fakeVCDocument){ - - @Override - public void actionPerformed(ActionEvent e) { - // TODO Auto-generated method stub - - } - - @Override - public void simStatusChanged(SimStatusEvent simStatusEvent) { - // TODO Auto-generated method stub - - } - - @Override - public void addResultsFrame(SimulationWindow simWindow) { - // TODO Auto-generated method stub - - } - - @Override - public VCDocument getVCDocument() { - // TODO Auto-generated method stub - return null; - } - - @Override - SimulationWindow haveSimulationWindow( - VCSimulationIdentifier vcSimulationIdentifier) { - // TODO Auto-generated method stub - return null; - } - - @Override - public void resetDocument(VCDocument newDocument) { - // TODO Auto-generated method stub - - } - - @Override - public void updateConnectionStatus(ConnectionStatus connStatus) { - // TODO Auto-generated method stub - - } - - @Override - public boolean isRecyclable() { - // TODO Auto-generated method stub - return false; - } - - @Override - public RequestManager getRequestManager() { - // TODO Auto-generated method stub - return OutputFunctionViewer.this.fieldDataWindowManager.getRequestManager(); - } - - @Override - public DocumentEditor getDocumentEditor() { - return null; - } - - }; - - SimulationWorkspace simulationWorkspace = new SimulationWorkspace(documentWindowManager, simulationOwner); - this.pdeDataViewer.setSimulationModelInfo(new SimulationWorkspaceModelInfo(simulationOwner, "temp")); - - setLayout(new BorderLayout()); - add(pdeDataViewer,BorderLayout.CENTER); - add(outputFunctionsPanel,BorderLayout.SOUTH); - outputFunctionsPanel.setSimulationWorkspace(simulationWorkspace); - } - public PDEDataViewer getPDEDataViewer(){ - return pdeDataViewer; - } - public OutputContext getOutputContext() throws Exception{ - Field outputfunctioncontextField = OutputFunctionsPanel.class.getDeclaredField("outputFunctionContext"); - outputfunctioncontextField.setAccessible(true); - OutputFunctionContext outputFunctionContext = (OutputFunctionContext)outputfunctioncontextField.get(outputFunctionsPanel); - OutputContext outputContext = new OutputContext(outputFunctionContext.getOutputFunctionsList().toArray(new AnnotatedFunction[0])); - return outputContext; - } - private void setMathDescVariables() throws Exception{ - AnnotatedFunction[] functions = this.pdeDataViewer.getPdeDataContext().getFunctions(); - for (int i = 0; i < functions.length; i++) { - if(functions[i].getFunctionType().equals(VariableType.VOLUME) && mathDescription.getVariable(functions[i].getName()) == null){ - mathDescription.addVariable(functions[i]); - } - } - DataIdentifier[] dataIds = this.pdeDataViewer.getPdeDataContext().getDataIdentifiers(); - for (int i = 0; i < dataIds.length; i++) { - if(dataIds[i].getVariableType().equals(VariableType.VOLUME) && mathDescription.getVariable(dataIds[i].getName()) == null){ - if(!dataIds[i].isFunction()){ - mathDescription.addVariable(new VolVariable(dataIds[i].getName(), dataIds[i].getDomain())); - } - } - } - } -} - -public void propertyChange(PropertyChangeEvent evt) { - if(evt.getSource() == currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext() && - ( - evt.getPropertyName().equals(PDEDataContext.PROP_CHANGE_FUNC_ADDED) || - evt.getPropertyName().equals(PDEDataContext.PROP_CHANGE_FUNC_REMOVED) - )){ - getFieldDataGUIPanel().refreshExternalDataIdentifierNode(currentlyViewedEDI); - } -} +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.beans.PropertyVetoException; +import java.lang.reflect.Field; +import java.util.Hashtable; +import java.util.List; +import java.util.Vector; +public class FieldDataWindowManager + extends TopLevelWindowManager + implements PropertyChangeListener, FieldDataDBEventListener, DataJobListenerHolder { + + public interface DataSymbolCallBack { + void createDataSymbol(ExternalDataIdentifier dataSetID, String fieldDataVarName, VariableType fieldDataVarType, double fieldDataVarTime); + } + + private FieldDataGUIPanel fieldDataGUIPanel; + private ExternalDataIdentifier currentlyViewedEDI; + private OutputFunctionViewer currentlyViewedOutputFunctionViewer; + + + public FieldDataWindowManager(FieldDataGUIPanel fdgp, RequestManager requestManager) { + super(requestManager); + fieldDataGUIPanel = fdgp; + requestManager.getDocumentManager().addFieldDataDBListener(this); + } + + public FieldDataGUIPanel getFieldDataGUIPanel() { + return fieldDataGUIPanel; + } + + @Override + public Component getComponent() { + return fieldDataGUIPanel; + } + + @Override + public String getManagerID() { + return ClientMDIManager.FIELDDATA_WINDOW_ID; + } + + @Override + public boolean isRecyclable() { + return true; + } + + public void deleteExternalDataIdentifier(ExternalDataIdentifier deleteExtDataID) throws DataAccessException { + getRequestManager().getDocumentManager().fieldDataDBOperation( + FieldDataDBOperationSpec.createDeleteExtDataIDSpec(deleteExtDataID)); + if (deleteExtDataID.equals(currentlyViewedEDI)) { + viewData(null); + } + } + + public RequestManager getLocalRequestManager() { + return getRequestManager(); + } + + public void updateJTree() { + fieldDataGUIPanel.updateJTree(getRequestManager()); + } + + + public ClientPDEDataContext getPDEDataContext(ExternalDataIdentifier eDI, OutputContext outputContext) throws DataAccessException { + return + ((PDEDataManager) getRequestManager().getDataManager(outputContext, eDI, true)).getPDEDataContext(); + } + + public void viewData(final ExternalDataIdentifier eDI) { + + ChildWindowManager childWindowManager = ChildWindowManager.findChildWindowManager(getComponent()); + if (eDI != null && eDI.equals(currentlyViewedEDI) && childWindowManager != null && childWindowManager.getChildWindowFromContext(eDI) != null) { + childWindowManager.getChildWindowFromContext(eDI).show(); + } else { + if (currentlyViewedOutputFunctionViewer != null) { + if (getLocalRequestManager() != null && getLocalRequestManager().getAsynchMessageManager() != null) { + getLocalRequestManager().getAsynchMessageManager().removeDataJobListener(currentlyViewedOutputFunctionViewer.getPDEDataViewer()); + } + if (currentlyViewedOutputFunctionViewer != null) { + currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext().removePropertyChangeListener(this); + } + } + if (currentlyViewedOutputFunctionViewer != null) { + ChildWindow childWindow = childWindowManager.getChildWindowFromContext(eDI); + if (childWindow != null) { + childWindow.close(); + } + } + currentlyViewedEDI = null; + currentlyViewedOutputFunctionViewer = null; + if (eDI == null) { + return; + } + + AsynchClientTask task1 = new AsynchClientTask("retrieve data", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + ClientPDEDataContext newPDEDataContext = getPDEDataContext(eDI, new OutputContext(new AnnotatedFunction[0])/*(currentlyViewedOutputFunctionViewer==null?null:currentlyViewedOutputFunctionViewer.getOutputContext())*/); + hashTable.put("newPDEDataContext", newPDEDataContext); + } + }; + AsynchClientTask task2 = new AsynchClientTask("show data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + try { + PDEDataViewer currentlyViewedPDEDV = new PDEDataViewer(); + ClientPDEDataContext newPDEDataContext = (ClientPDEDataContext) hashTable.get("newPDEDataContext"); + currentlyViewedPDEDV.setPdeDataContext(newPDEDataContext); + newPDEDataContext.addPropertyChangeListener(FieldDataWindowManager.this); + getLocalRequestManager().getAsynchMessageManager().addDataJobListener(currentlyViewedPDEDV); + currentlyViewedOutputFunctionViewer = new OutputFunctionViewer(currentlyViewedPDEDV, FieldDataWindowManager.this, eDI); + + DataViewerManager dvm = new DataViewerManager() { + public void dataJobMessage(DataJobEvent event) { + } + + public void exportMessage(ExportEvent event) { + } + + public void addDataListener(DataListener newListener) { + } + + public UserPreferences getUserPreferences() { + return getRequestManager().getUserPreferences(); + } + + public void removeDataListener(DataListener newListener) { + } + + public void startExport(Component requester, OutputContext outputContext, ExportSpecs exportSpecs) { + getLocalRequestManager().startExport(outputContext, requester, exportSpecs); + } + + public void simStatusChanged(SimStatusEvent simStatusEvent) { + } + + public User getUser() { + return getRequestManager().getDocumentManager().getUser(); + } + + public RequestManager getRequestManager() { + return FieldDataWindowManager.this.getRequestManager(); + } + }; + + try { + currentlyViewedPDEDV.setDataViewerManager(dvm); + } catch (PropertyVetoException e) { + e.printStackTrace(); + } + + ChildWindowManager childWindowManager = ChildWindowManager.findChildWindowManager(getComponent()); + currentlyViewedEDI = eDI; + ChildWindow childWindow = childWindowManager.addChildWindow(currentlyViewedOutputFunctionViewer, currentlyViewedEDI, "Field Data Viewer (" + eDI.getName() + ")"); + childWindow.setSize(600, 500); + childWindow.setIsCenteredOnParent(); + childWindow.show(); + + } catch (Exception e) { + if (currentlyViewedOutputFunctionViewer != null) { + if (getLocalRequestManager() != null && getLocalRequestManager().getAsynchMessageManager() != null) { + getLocalRequestManager().getAsynchMessageManager().removeDataJobListener(currentlyViewedOutputFunctionViewer.getPDEDataViewer()); + } + if (currentlyViewedOutputFunctionViewer != null) { + currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext().removePropertyChangeListener(FieldDataWindowManager.this); + } + } + throw e; + } + } + }; + ClientTaskDispatcher.dispatch(this.getComponent(), new Hashtable(), new AsynchClientTask[]{task1, task2}, false); + } + } + + private static class OutputFunctionViewer extends JPanel { + private PDEDataViewer pdeDataViewer; + private OutputFunctionsPanel outputFunctionsPanel; + private Geometry geom; + private MathDescription mathDescription; + private ExternalDataIdentifier edi; + private FieldDataWindowManager fieldDataWindowManager; + + public OutputFunctionViewer(final PDEDataViewer pdeDataViewer, FieldDataWindowManager fieldDataWindowManager, ExternalDataIdentifier edi) throws Exception { + this.pdeDataViewer = pdeDataViewer; + this.edi = edi; + this.fieldDataWindowManager = fieldDataWindowManager; + this.outputFunctionsPanel = new OutputFunctionsPanel(); + CartesianMesh cartesianMesh = pdeDataViewer.getPdeDataContext().getCartesianMesh(); + VCImageUncompressed vcImage = new VCImageUncompressed(null, new byte[cartesianMesh.getNumVolumeElements()], cartesianMesh.getExtent(), cartesianMesh.getSizeX(), cartesianMesh.getSizeY(), cartesianMesh.getSizeZ()); + this.geom = new Geometry("temp", vcImage); + this.mathDescription = new MathDescription("temp"); + mathDescription.setGeometry(geom); + setMathDescVariables(); + this.pdeDataViewer.setSimNameSimDataID(new SimNameSimDataID("temp", new VCSimulationIdentifier(edi.getKey(), edi.getOwner()), null)); + this.pdeDataViewer.setSimulationModelInfo(new SimulationModelInfo() { + + @Override + public String getVolumeNamePhysiology(int subVolumeID) { + return "volPhysiology"; + } + + @Override + public String getVolumeNameGeometry(int subVolumeID) { + return "volGeometry"; + } + + @Override + public String getSimulationName() { + return "simName"; + } + + @Override + public String getMembraneName(int subVolumeIdIn, int subVolumeIdOut, boolean bFromGeometry) { + return "membraneName"; + } + + @Override + public String getContextName() { + return "contextName"; + } + + @Override + public DataSymbolMetadataResolver getDataSymbolMetadataResolver() { + return pdeDataViewer.getSimulationModelInfo().getDataSymbolMetadataResolver(); + } + }); + + SimulationOwner simulationOwner = new SimulationOwner.FieldDataSimOwner() { + private OutputFunctionContext outputFunctionContext = new OutputFunctionContext(this); + + { + outputFunctionContext.addPropertyChangeListener(new PropertyChangeListener() { + @Override + public void propertyChange(PropertyChangeEvent evt) { + final String PDEDC_KEY = "PDEDC_KEY"; + AsynchClientTask task1 = new AsynchClientTask("getPDEDataContext...", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + @Override + public void run(Hashtable hashTable) throws Exception { + OutputContext outputContext = OutputFunctionViewer.this.getOutputContext(); + ClientPDEDataContext pdeDataContext = OutputFunctionViewer.this.fieldDataWindowManager.getPDEDataContext(OutputFunctionViewer.this.edi, outputContext); + hashTable.put(PDEDC_KEY, pdeDataContext); + } + }; + AsynchClientTask task2 = new AsynchClientTask("setPDEDataContext...", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + @Override + public void run(Hashtable hashTable) throws Exception { + OutputFunctionViewer.this.pdeDataViewer.setPdeDataContext((ClientPDEDataContext) hashTable.get(PDEDC_KEY)); + setMathDescVariables(); + } + }; + ClientTaskDispatcher.dispatch(OutputFunctionViewer.this, new Hashtable(), new AsynchClientTask[]{task1, task2}, true, false, false, null, true); + } + }); + } + + @Override + public void removePropertyChangeListener(PropertyChangeListener listener) { + System.out.println("somebody remove mysimowner listener " + listener); + } + + @Override + public Geometry getGeometry() { + return geom; + } + + @Override + public void addPropertyChangeListener(PropertyChangeListener listener) { + System.out.println("somebody add mysimowner listener " + listener); + + } + + @Override + public void removeSimulation(Simulation simulation) + throws PropertyVetoException { + } + + @Override + public Simulation[] getSimulations() { + return null; + } + + @Override + public OutputFunctionContext getOutputFunctionContext() { + return outputFunctionContext; + } + + @Override + public MathOverridesResolver getMathOverridesResolver() { + return null; + } + + @Override + public String getName() { + return "temp"; + } + + @Override + public MathDescription getMathDescription() { + return mathDescription; + } + + @Override + public Simulation copySimulation(Simulation simulation) + throws PropertyVetoException { + return null; + } + + @Override + public Issue gatherIssueForMathOverride(IssueContext issueContext, Simulation simulation, String name) { + return null; + } + + /** + * @throws UnsupportedOperationException (always) + */ + @Override + public UnitInfo getUnitInfo() throws UnsupportedOperationException { + throw new UnsupportedOperationException(); + } + }; + VCDocument fakeVCDocument = new VCDocument() { + + @Override + public boolean compareEqual(Matchable obj) { + return false; + } + + @Override + public String getDescription() { + return null; + } + + @Override + public VCDocumentType getDocumentType() { + return null; + } + + @Override + public String getName() { + return null; + } + + @Override + public Version getVersion() { + return null; + } + + @Override + public void refreshDependencies() { + + } + + @Override + public void setDescription(String description) + throws PropertyVetoException { + // TODO Auto-generated method stub + + } + + @Override + public void setName(String newName) throws PropertyVetoException { + // TODO Auto-generated method stub + + } + + @Override + public void gatherIssues(IssueContext issueContext, List issueList) { + // TODO Auto-generated method stub + + } + + }; + DocumentWindowManager documentWindowManager = new DocumentWindowManager(pdeDataViewer, fieldDataWindowManager.getRequestManager(), fakeVCDocument) { + + @Override + public void actionPerformed(ActionEvent e) { + // TODO Auto-generated method stub + + } + + @Override + public void simStatusChanged(SimStatusEvent simStatusEvent) { + // TODO Auto-generated method stub + + } + + @Override + public void addResultsFrame(SimulationWindow simWindow) { + // TODO Auto-generated method stub + + } + + @Override + public VCDocument getVCDocument() { + // TODO Auto-generated method stub + return null; + } + + @Override + SimulationWindow haveSimulationWindow( + VCSimulationIdentifier vcSimulationIdentifier) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void resetDocument(VCDocument newDocument) { + // TODO Auto-generated method stub + + } + + @Override + public void updateConnectionStatus(ConnectionStatus connStatus) { + // TODO Auto-generated method stub + + } + + @Override + public boolean isRecyclable() { + // TODO Auto-generated method stub + return false; + } + + @Override + public RequestManager getRequestManager() { + // TODO Auto-generated method stub + return OutputFunctionViewer.this.fieldDataWindowManager.getRequestManager(); + } + + @Override + public DocumentEditor getDocumentEditor() { + return null; + } + + }; + + SimulationWorkspace simulationWorkspace = new SimulationWorkspace(documentWindowManager, simulationOwner); + this.pdeDataViewer.setSimulationModelInfo(new SimulationWorkspaceModelInfo(simulationOwner, "temp")); + + setLayout(new BorderLayout()); + add(pdeDataViewer, BorderLayout.CENTER); + add(outputFunctionsPanel, BorderLayout.SOUTH); + outputFunctionsPanel.setSimulationWorkspace(simulationWorkspace); + } + + public PDEDataViewer getPDEDataViewer() { + return pdeDataViewer; + } + + public OutputContext getOutputContext() throws Exception { + Field outputfunctioncontextField = OutputFunctionsPanel.class.getDeclaredField("outputFunctionContext"); + outputfunctioncontextField.setAccessible(true); + OutputFunctionContext outputFunctionContext = (OutputFunctionContext) outputfunctioncontextField.get(outputFunctionsPanel); + OutputContext outputContext = new OutputContext(outputFunctionContext.getOutputFunctionsList().toArray(new AnnotatedFunction[0])); + return outputContext; + } + + private void setMathDescVariables() throws Exception { + AnnotatedFunction[] functions = this.pdeDataViewer.getPdeDataContext().getFunctions(); + for (int i = 0; i < functions.length; i++) { + if (functions[i].getFunctionType().equals(VariableType.VOLUME) && mathDescription.getVariable(functions[i].getName()) == null) { + mathDescription.addVariable(functions[i]); + } + } + DataIdentifier[] dataIds = this.pdeDataViewer.getPdeDataContext().getDataIdentifiers(); + for (int i = 0; i < dataIds.length; i++) { + if (dataIds[i].getVariableType().equals(VariableType.VOLUME) && mathDescription.getVariable(dataIds[i].getName()) == null) { + if (!dataIds[i].isFunction()) { + mathDescription.addVariable(new VolVariable(dataIds[i].getName(), dataIds[i].getDomain())); + } + } + } + } + } + + public void propertyChange(PropertyChangeEvent evt) { + if (evt.getSource() == currentlyViewedOutputFunctionViewer.getPDEDataViewer().getPdeDataContext() && + ( + evt.getPropertyName().equals(PDEDataContext.PROP_CHANGE_FUNC_ADDED) || + evt.getPropertyName().equals(PDEDataContext.PROP_CHANGE_FUNC_REMOVED) + )) { + getFieldDataGUIPanel().refreshExternalDataIdentifierNode(currentlyViewedEDI); + } + } + + + public boolean findReferencingModels(final ExternalDataIdentifier targetExtDataID, boolean bShowReferencingModelsList) + throws DataAccessException, UserCancelException { + + ReferenceQuerySpec rqs = new ReferenceQuerySpec(targetExtDataID); + + ReferenceQueryResult rqr = getRequestManager().getDocumentManager().findReferences(rqs); + VersionableTypeVersion[] dependants = null; + Hashtable choices = new Hashtable(); + boolean bDanglingReferences = false; + + VersionableType bioModelType = VersionableType.BioModelMetaData; + VersionableType mathModelType = VersionableType.MathModelMetaData; + + if (rqr != null) { + dependants = (rqr.getVersionableFamily().bDependants() ? rqr.getVersionableFamily().getUniqueDependants() : null); + if (dependants != null) { + for (int i = 0; i < dependants.length; i += 1) { + boolean isBioModel = dependants[i].getVType().equals(bioModelType); + boolean isTop = isBioModel || dependants[i].getVType().equals(mathModelType); + if (isTop) { + VersionableRelationship[] vrArr2 = rqr.getVersionableFamily().getDependantRelationships(); + for (int j = 0; j < vrArr2.length; j += 1) { + if ((vrArr2[j].from() == dependants[i]) && + vrArr2[j].to().getVType().equals((isBioModel ? VersionableType.SimulationContext : VersionableType.MathDescription))) { + for (int k = 0; k < vrArr2.length; k += 1) { + boolean bAdd = false; + if (k == j && vrArr2[k].from().getVType().equals(mathModelType)) { + bAdd = true; + } + if ((vrArr2[k].from() == vrArr2[j].to()) && + vrArr2[k].to().getVType().equals(VersionableType.MathDescription)) { + bAdd = true; + } + if (bAdd) { + choices.put(dependants[i], + new String[]{ + dependants[i].getVersion().getName(), + (isBioModel ? bioModelType.getTypeName() : mathModelType.getTypeName()), + (isBioModel ? vrArr2[k].from().getVersion().getName() : ""), + dependants[i].getVersion().getVersionKey().toString() + } + ); + } + } + } + } + } + } + bDanglingReferences = (choices.size() == 0); + } else { + bDanglingReferences = true; + } + } -public boolean findReferencingModels(final ExternalDataIdentifier targetExtDataID,boolean bShowReferencingModelsList) - throws DataAccessException,UserCancelException{ - - ReferenceQuerySpec rqs = new ReferenceQuerySpec(targetExtDataID); - - ReferenceQueryResult rqr = getRequestManager().getDocumentManager().findReferences(rqs); - VersionableTypeVersion[] dependants = null; - Hashtable choices = new Hashtable(); - boolean bDanglingReferences = false; - - VersionableType bioModelType = VersionableType.BioModelMetaData; - VersionableType mathModelType = VersionableType.MathModelMetaData; - - if(rqr != null){ - dependants = (rqr.getVersionableFamily().bDependants()?rqr.getVersionableFamily().getUniqueDependants():null); - if(dependants != null){ - for(int i=0;i 0 || fdfor != null){ - bHasReferences = true; - if(bShowReferencingModelsList){ - String[] columnNames = new String[] {"Model","Type","Description"}; - Vector varTypeV = new Vector(); - Vector keyValV = new Vector(); - Vector choicesV= new Vector(); - String[][] modelListData = choices.values().toArray(new String[0][0]); - for (int i = 0; i < modelListData.length; i++) { - choicesV.add(new String[]{modelListData[i][0], modelListData[i][1], - "Model Variable - "+(modelListData[i][2].length() == 0?"":"App='"+modelListData[i][2]+"'")+" version["+modelListData[i][3]+"]" - } - ); - varTypeV.add((modelListData[i][1].equals(bioModelType.getTypeName())?bioModelType:mathModelType)); - keyValV.add(new KeyValue(modelListData[i][3])); - } - for (int i = 0; fdfor != null && i < fdfor.dependantFunctionInfo.length; i++) { - String functionNames = ""; - for (int j = 0; j < fdfor.dependantFunctionInfo[i].funcNames.length; j++) { - functionNames+=(j>0?",":"")+fdfor.dependantFunctionInfo[i].funcNames[j]; - } - choicesV.add(new String[] { - fdfor.dependantFunctionInfo[i].referenceSourceName, - fdfor.dependantFunctionInfo[i].referenceSourceType, - "Data Viewer Function(s) '"+functionNames+"' - "+ - (fdfor.dependantFunctionInfo[i].applicationName == null?"":"App='"+fdfor.dependantFunctionInfo[i].applicationName+"' ")+ - (fdfor.dependantFunctionInfo[i].simulationName == null?"":"Sim='"+fdfor.dependantFunctionInfo[i].simulationName+"' ")+ - "version["+fdfor.dependantFunctionInfo[i].refSourceVersionDate+"]" - } - ); - if(fdfor.dependantFunctionInfo[i].referenceSourceType.equals(FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME)){ - varTypeV.add(null); - }else if(fdfor.dependantFunctionInfo[i].referenceSourceType.equals(bioModelType.getTypeName())){ - varTypeV.add(bioModelType); - }else if(fdfor.dependantFunctionInfo[i].referenceSourceType.equals(mathModelType.getTypeName())){ - varTypeV.add(mathModelType); - }else{ - throw new IllegalArgumentException("Unknown reference source type "+fdfor.dependantFunctionInfo[i].referenceSourceType); - } - keyValV.add(fdfor.dependantFunctionInfo[i].refSourceVersionKey); - } - int[] selectionArr = PopupGenerator.showComponentOKCancelTableList( - getComponent(), "References to Field Data (Select To Open) "+targetExtDataID.getName(), - columnNames, choicesV.toArray(new String[0][0]), ListSelectionModel.SINGLE_SELECTION); - if(selectionArr != null && selectionArr.length > 0){ - if(varTypeV.elementAt(selectionArr[0]) != null){ - if(varTypeV.elementAt(selectionArr[0]).equals(bioModelType)){ - BioModelInfo bmi = getRequestManager().getDocumentManager().getBioModelInfo(keyValV.elementAt(selectionArr[0])); - getRequestManager().openDocument(bmi,FieldDataWindowManager.this,true); - }else if(varTypeV.elementAt(selectionArr[0]).equals(mathModelType)){ - MathModelInfo mmi = getRequestManager().getDocumentManager().getMathModelInfo(keyValV.elementAt(selectionArr[0])); - getRequestManager().openDocument(mmi,FieldDataWindowManager.this,true); - }else{ - throw new IllegalArgumentException("Not expecting varType "+varTypeV.elementAt(selectionArr[0])); - } - }else{ - PopupGenerator.showInfoDialog(this, "use FiledDataManager to view FieldData '" + choicesV.elementAt(selectionArr[0])[0]+"'"); - } - } - } - }else{ - if(!bDanglingReferences){ - bHasReferences = false; - if(bShowReferencingModelsList){ - PopupGenerator.showInfoDialog(this, "No Model references found for Field Data "+targetExtDataID.getName()); - } - }else{ - bHasReferences = true; - if(bShowReferencingModelsList){ - PopupGenerator.showInfoDialog(this, "No current Model references found.\n"+ - "Field Data has internal database references from\n"+ - "previously linked Model(s) that have been deleted.\n"+ - "Note: Field Data '"+targetExtDataID.getName()+"' is not deletable\n"+ - "until database is culled (daily)."); - } - } - } - return bHasReferences; -} -public void fieldDataDBEvent(FieldDataDBEvent fieldDataDBEvent) { - updateJTree(); - -} + FieldDataFileOperationResults fdfor = null; + + boolean bHasReferences = false; + if (choices.size() > 0 || fdfor != null) { + bHasReferences = true; + if (bShowReferencingModelsList) { + String[] columnNames = new String[]{"Model", "Type", "Description"}; + Vector varTypeV = new Vector(); + Vector keyValV = new Vector(); + Vector choicesV = new Vector(); + String[][] modelListData = choices.values().toArray(new String[0][0]); + for (int i = 0; i < modelListData.length; i++) { + choicesV.add(new String[]{modelListData[i][0], modelListData[i][1], + "Model Variable - " + (modelListData[i][2].length() == 0 ? "" : "App='" + modelListData[i][2] + "'") + " version[" + modelListData[i][3] + "]" + } + ); + varTypeV.add((modelListData[i][1].equals(bioModelType.getTypeName()) ? bioModelType : mathModelType)); + keyValV.add(new KeyValue(modelListData[i][3])); + } + for (int i = 0; fdfor != null && i < fdfor.dependantFunctionInfo.length; i++) { + String functionNames = ""; + for (int j = 0; j < fdfor.dependantFunctionInfo[i].funcNames.length; j++) { + functionNames += (j > 0 ? "," : "") + fdfor.dependantFunctionInfo[i].funcNames[j]; + } + choicesV.add(new String[]{ + fdfor.dependantFunctionInfo[i].referenceSourceName, + fdfor.dependantFunctionInfo[i].referenceSourceType, + "Data Viewer Function(s) '" + functionNames + "' - " + + (fdfor.dependantFunctionInfo[i].applicationName == null ? "" : "App='" + fdfor.dependantFunctionInfo[i].applicationName + "' ") + + (fdfor.dependantFunctionInfo[i].simulationName == null ? "" : "Sim='" + fdfor.dependantFunctionInfo[i].simulationName + "' ") + + "version[" + fdfor.dependantFunctionInfo[i].refSourceVersionDate + "]" + } + ); + if (fdfor.dependantFunctionInfo[i].referenceSourceType.equals(FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME)) { + varTypeV.add(null); + } else if (fdfor.dependantFunctionInfo[i].referenceSourceType.equals(bioModelType.getTypeName())) { + varTypeV.add(bioModelType); + } else if (fdfor.dependantFunctionInfo[i].referenceSourceType.equals(mathModelType.getTypeName())) { + varTypeV.add(mathModelType); + } else { + throw new IllegalArgumentException("Unknown reference source type " + fdfor.dependantFunctionInfo[i].referenceSourceType); + } + keyValV.add(fdfor.dependantFunctionInfo[i].refSourceVersionKey); + } + int[] selectionArr = PopupGenerator.showComponentOKCancelTableList( + getComponent(), "References to Field Data (Select To Open) " + targetExtDataID.getName(), + columnNames, choicesV.toArray(new String[0][0]), ListSelectionModel.SINGLE_SELECTION); + if (selectionArr != null && selectionArr.length > 0) { + if (varTypeV.elementAt(selectionArr[0]) != null) { + if (varTypeV.elementAt(selectionArr[0]).equals(bioModelType)) { + BioModelInfo bmi = getRequestManager().getDocumentManager().getBioModelInfo(keyValV.elementAt(selectionArr[0])); + getRequestManager().openDocument(bmi, FieldDataWindowManager.this, true); + } else if (varTypeV.elementAt(selectionArr[0]).equals(mathModelType)) { + MathModelInfo mmi = getRequestManager().getDocumentManager().getMathModelInfo(keyValV.elementAt(selectionArr[0])); + getRequestManager().openDocument(mmi, FieldDataWindowManager.this, true); + } else { + throw new IllegalArgumentException("Not expecting varType " + varTypeV.elementAt(selectionArr[0])); + } + } else { + PopupGenerator.showInfoDialog(this, "use FiledDataManager to view FieldData '" + choicesV.elementAt(selectionArr[0])[0] + "'"); + } + } + } + } else { + if (!bDanglingReferences) { + bHasReferences = false; + if (bShowReferencingModelsList) { + PopupGenerator.showInfoDialog(this, "No Model references found for Field Data " + targetExtDataID.getName()); + } + } else { + bHasReferences = true; + if (bShowReferencingModelsList) { + PopupGenerator.showInfoDialog(this, "No current Model references found.\n" + + "Field Data has internal database references from\n" + + "previously linked Model(s) that have been deleted.\n" + + "Note: Field Data '" + targetExtDataID.getName() + "' is not deletable\n" + + "until database is culled (daily)."); + } + } + } + return bHasReferences; + } + + public void fieldDataDBEvent(FieldDataDBEvent fieldDataDBEvent) { + updateJTree(); + + } } diff --git a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java index b9e264192f..cf8f6356d1 100644 --- a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java +++ b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java @@ -81,1781 +81,1726 @@ import cbit.vcell.solver.SimulationInfo; import cbit.vcell.solvers.CartesianMesh; -public class FieldDataGUIPanel extends JPanel{ - - private static final String FIELD_DATA_INFO = "Field Data Info"; - public static final String FIELD_NAME = "fieldName"; - public static final String USER_DEFINED_FDOS = "userDefinedFDOS"; - final int modePslidExperimentalData = 0; - final int modePslidGeneratedModel = 1; - // - public static final String LIST_NODE_VAR_LABEL = "Variables"; - // - private JPopupMenu jPopupMenu = new JPopupMenu(); - private static final int COPY_CSV = 0; - private static final int COPY_NL = 1; - private static final int COPY_CRNL = 2; - private static final int COPY_SPACE = 3; - // - private class InitializedRootNode { - private String rootNodeString; - public InitializedRootNode(String argRNS){ - rootNodeString = argRNS; - } - public String toString(){ - return rootNodeString; - } - } - - private static class FieldDataMainList { - public ExternalDataIdentifier externalDataIdentifier; - public String extDataAnnot; - public FieldDataMainList(ExternalDataIdentifier argExternalDataIdentifier,String argExtDataAnnot){ - externalDataIdentifier = argExternalDataIdentifier; - extDataAnnot = argExtDataAnnot; - } - public String toString(){ - return externalDataIdentifier.getName(); - } - } - - private static class FieldDataVarMainList { - public FieldDataVarMainList(){ - } - public String toString(){ - return LIST_NODE_VAR_LABEL; - } - } - - private class FieldDataVarList { - public DataIdentifier dataIdentifier; - private String descr; - public FieldDataVarList(DataIdentifier argDataIdentifier){ - dataIdentifier = argDataIdentifier; - if(dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME)|| - dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME_REGION)){ - descr = "(Vol"+(dataIdentifier.isFunction()?"Fnc":"")+") "+dataIdentifier.getName(); - }else if(dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE) || - dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE_REGION)){ - descr = "(Mem"+(dataIdentifier.isFunction()?"Fnc":"")+") "+dataIdentifier.getName(); - }else{ - descr = "(---"+(dataIdentifier.isFunction()?"Fnc":"")+") "+dataIdentifier.getName(); - } - } - public String toString(){ - return descr; - } - } - - private class FieldDataTimeList { - public double[] times; - private String descr; - public FieldDataTimeList(double[] argTimes){ - times = argTimes; - descr = - "Times ( "+times.length+" ) Begin="+times[0]+ - " End="+times[times.length-1]; - } - public String toString(){ - return descr; - } - } - - private class FieldDataIDList { -// public KeyValue key = null; - private String descr; - public FieldDataIDList(KeyValue k){ +public class FieldDataGUIPanel extends JPanel { + + private static final String FIELD_DATA_INFO = "Field Data Info"; + public static final String FIELD_NAME = "fieldName"; + public static final String USER_DEFINED_FDOS = "userDefinedFDOS"; + // + public static final String LIST_NODE_VAR_LABEL = "Variables"; + // + private final JPopupMenu jPopupMenu = new JPopupMenu(); + private static final int COPY_CSV = 0; + private static final int COPY_NL = 1; + private static final int COPY_CRNL = 2; + private static final int COPY_SPACE = 3; + + // + private static class InitializedRootNode { + private final String rootNodeString; + + public InitializedRootNode(String argRNS) { + rootNodeString = argRNS; + } + + public String toString() { + return rootNodeString; + } + } + + private static class FieldDataMainList { + public ExternalDataIdentifier externalDataIdentifier; + public String extDataAnnot; + + public FieldDataMainList(ExternalDataIdentifier argExternalDataIdentifier, String argExtDataAnnot) { + externalDataIdentifier = argExternalDataIdentifier; + extDataAnnot = argExtDataAnnot; + } + + public String toString() { + return externalDataIdentifier.getName(); + } + } + + private static class FieldDataVarMainList { + public FieldDataVarMainList() { + } + + public String toString() { + return LIST_NODE_VAR_LABEL; + } + } + + private static class FieldDataVarList { + public DataIdentifier dataIdentifier; + private final String descr; + + public FieldDataVarList(DataIdentifier argDataIdentifier) { + dataIdentifier = argDataIdentifier; + if (dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME) || + dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME_REGION)) { + descr = "(Vol" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } else if (dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE) || + dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE_REGION)) { + descr = "(Mem" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } else { + descr = "(---" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } + } + + public String toString() { + return descr; + } + } + + private static class FieldDataTimeList { + public double[] times; + private final String descr; + + public FieldDataTimeList(double[] argTimes) { + times = argTimes; + descr = + "Times ( " + times.length + " ) Begin=" + times[0] + + " End=" + times[times.length - 1]; + } + + public String toString() { + return descr; + } + } + + private static class FieldDataIDList { + // public KeyValue key = null; + private final String descr; + + public FieldDataIDList(KeyValue k) { // this.key = k; - this.descr ="Key (" + k + ")"; - } - public String toString(){ - return descr; - } - } - - private class FieldDataISizeList { - public ISize isize; - private String descr; - public FieldDataISizeList(ISize arg){ - isize = arg; - descr ="Size ( "+ - isize.getX()+" , "+ - isize.getY()+" , "+ - isize.getZ()+" )"; - } - public String toString(){ - return descr; - } - } - - private class FieldDataOriginList { - public Origin origin; - private String descr; - public FieldDataOriginList(Origin arg){ - origin = arg; - descr ="Origin ( "+ - origin.getX()+" , "+ - origin.getY()+" , "+ - origin.getZ()+" )"; - } - public String toString(){ - return descr; - } - } - - private class FieldDataExtentList { - public Extent extent; - private String descr; - public FieldDataExtentList(Extent arg){ - extent = arg; - descr ="Extent ( "+ - extent.getX()+" , "+ - extent.getY()+" , "+ - extent.getZ()+" )"; - } - public String toString(){ - return descr; - } - } - - - private FieldDataWindowManager fieldDataWindowManager; - // - private javax.swing.JButton ivjJButtonFDDelete = null; - private javax.swing.JPanel ivjJPanel1 = null; - private javax.swing.JPanel normalTopPanel = null; - private javax.swing.JButton ivjJButtonFDView = null; - private javax.swing.JTree ivjJTree1 = null; - IvjEventHandler ivjEventHandler = new IvjEventHandler(); - private javax.swing.JScrollPane ivjJScrollPane1 = null; - private javax.swing.JButton ivjJButtonFDCopyRef = null; - private JButton jButtonFindRefModel = null; - private JPanel jPanel = null; - private JButton jButtonCreateGeom = null; - private JPanel jPanel1 = null; - private JButton jButtonViewAnnot = null; - class IvjEventHandler implements ActionListener,TreeExpansionListener, javax.swing.event.TreeSelectionListener { - public void actionPerformed(java.awt.event.ActionEvent e) { - if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDDelete()) - connEtoC7(e); - if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCopyRef()) - connEtoC8(e); - if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDView()) - connEtoC10(e); - if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCreate()) - if(getCreateJComboBox().getSelectedItem().equals(FROM_SIM)){ - jButtonFDFromSim_ActionPerformed(e); - }else if(getCreateJComboBox().getSelectedItem().equals(FROM_FILE)){ - jButtonFDFromFile_ActionPerformed(e); - } + this.descr = "Key (" + k + ")"; + } + + public String toString() { + return descr; + } + } + + private static class FieldDataISizeList { + public ISize isize; + private final String descr; + + public FieldDataISizeList(ISize arg) { + isize = arg; + descr = "Size ( " + + isize.getX() + " , " + + isize.getY() + " , " + + isize.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + private static class FieldDataOriginList { + public Origin origin; + private final String descr; + + public FieldDataOriginList(Origin arg) { + origin = arg; + descr = "Origin ( " + + origin.getX() + " , " + + origin.getY() + " , " + + origin.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + private static class FieldDataExtentList { + public Extent extent; + private final String descr; + + public FieldDataExtentList(Extent arg) { + extent = arg; + descr = "Extent ( " + + extent.getX() + " , " + + extent.getY() + " , " + + extent.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + + private FieldDataWindowManager fieldDataWindowManager; + // + private javax.swing.JButton ivjJButtonFDDelete = null; + private javax.swing.JPanel ivjJPanel1 = null; + private javax.swing.JPanel normalTopPanel = null; + private javax.swing.JButton ivjJButtonFDView = null; + private javax.swing.JTree ivjJTree1 = null; + IvjEventHandler ivjEventHandler = new IvjEventHandler(); + private javax.swing.JScrollPane ivjJScrollPane1 = null; + private javax.swing.JButton ivjJButtonFDCopyRef = null; + private JButton jButtonFindRefModel = null; + private JPanel jPanel = null; + private JButton jButtonCreateGeom = null; + private JPanel jPanel1 = null; + private JButton jButtonViewAnnot = null; + + class IvjEventHandler implements ActionListener, TreeExpansionListener, javax.swing.event.TreeSelectionListener { + public void actionPerformed(java.awt.event.ActionEvent e) { + if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDDelete()) + connEtoC7(e); + if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCopyRef()) + connEtoC8(e); + if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDView()) + connEtoC10(e); + if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCreate()) + if (getCreateJComboBox().getSelectedItem().equals(FROM_SIM)) { + jButtonFDFromSim_ActionPerformed(e); + } else if (getCreateJComboBox().getSelectedItem().equals(FROM_FILE)) { + jButtonFDFromFile_ActionPerformed(e); + } // else if(getCreateJComboBox().getSelectedItem().equals(FROM_IMAGEJ)){ // fromImageJ(); // } - }; - public void treeCollapsed(javax.swing.event.TreeExpansionEvent event) {}; - public void treeExpanded(javax.swing.event.TreeExpansionEvent event) { - if (event.getSource() == FieldDataGUIPanel.this.getJTree1()) - connEtoC6(event); - }; - public void valueChanged(javax.swing.event.TreeSelectionEvent e) { - if (e.getSource() == FieldDataGUIPanel.this.getJTree1()) - connEtoC2(e); - }; - }; - -/** - * FieldDataGUIPanel constructor comment. - */ -public FieldDataGUIPanel() { - super(); - initialize(); -} - -/** - * connEtoC1: (FieldDataGUIPanel.initialize() --> FieldDataGUIPanel.fieldDataGUIPanel_Initialize()V) - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private void connEtoC1() { - try { - // user code begin {1} - // user code end - this.fieldDataGUIPanel_Initialize(); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - - -/** - * connEtoC2: (JTree1.treeSelection.valueChanged(javax.swing.event.TreeSelectionEvent) --> FieldDataGUIPanel.jTree1_ValueChanged(Ljavax.swing.event.TreeSelectionEvent;)V) - * @param arg1 javax.swing.event.TreeSelectionEvent - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private void connEtoC2(javax.swing.event.TreeSelectionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jTree1_ValueChanged(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - - -private void connEtoC6(javax.swing.event.TreeExpansionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jTree1_TreeExpanded(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - -private void connEtoC7(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDDelete_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - -private void connEtoC8(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDCopyRef_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - -private void copyMethod(int copyMode){ - String delimiter = ""; - if(copyMode == COPY_NL){ - delimiter = "\n"; - }else if(copyMode == COPY_CRNL){ - delimiter = "\r\n"; - }else if(copyMode == COPY_CSV){ - delimiter = ","; - }else if(copyMode == COPY_SPACE){ - delimiter = " "; - } - String copyString = ""; - javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); - if(selPath != null){ - javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); - if(lastPathComponent.equals(getJTree1().getModel().getRoot())){ - int childCount = lastPathComponent.getChildCount(); - for(int i=0;i 0 ){ - VCellTransferable.sendToClipboard(copyString); - } - } -} - -private void connEtoC10(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDView_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } -} - -/** - * Comment - */ -private void fieldDataGUIPanel_Initialize() { - - getJTree1().getSelectionModel().setSelectionMode(javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION); - - JMenuItem copyMenuItem = new JMenuItem("Copy"); - copyMenuItem.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - copyMethod(COPY_SPACE); - } - }); - JMenuItem copyCSVMenuItem = new JMenuItem("Copy w/ Commas"); - copyCSVMenuItem.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - copyMethod(COPY_CSV); - } - }); - JMenuItem copyNewLineMenuItem = new JMenuItem("Copy w/ LF"); - copyNewLineMenuItem.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - copyMethod(COPY_NL); - } - }); - JMenuItem copyReturnNewLineMenuItem = new JMenuItem("Copy w/ CRLF"); - copyReturnNewLineMenuItem.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - copyMethod(COPY_CRNL); - } - }); - -} - -public void updateJTree(final RequestManager clientRequestManager){ - - if(clientRequestManager == null){ - DefaultMutableTreeNode emptyNode = new DefaultMutableTreeNode("No Info Available"); - getJTree1().setModel(new DefaultTreeModel(emptyNode)); - }else{ - DefaultMutableTreeNode startupNode = new DefaultMutableTreeNode("Gathering Field Data Information... (Please wait)"); - getJTree1().setModel(new DefaultTreeModel(startupNode)); - AsynchClientTask gatherInfo = new AsynchClientTask("gatherInfo", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - - @Override - public void run(Hashtable hashTable) throws Exception { - try { - DocumentManager documentManager = clientRequestManager.getDocumentManager(); - FieldDataDBOperationSpec fdos = FieldDataDBOperationSpec.createGetExtDataIDsSpec(documentManager.getUser()); - FieldDataDBOperationResults fieldDataDBOperationResults = documentManager.fieldDataDBOperation(fdos); - - ExternalDataIdentifier[] externalDataIdentifierArr = fieldDataDBOperationResults.extDataIDArr; - String[] extDataAnnotArr = fieldDataDBOperationResults.extDataAnnotArr; - - TreeMap sortedExtDataIDTreeMap = new TreeMap( - new Comparator() { - public int compare(ExternalDataIdentifier o1, ExternalDataIdentifier o2) { - return o1.getName().compareToIgnoreCase(o2.getName()); - } - } - ); - for(int i=0;i> sortIter = sortedExtDataIDTreeMap.entrySet().iterator(); - while(sortIter.hasNext()){ - Entry entry = sortIter.next(); - DefaultMutableTreeNode mainNode = new DefaultMutableTreeNode(new FieldDataMainList(entry.getKey(),entry.getValue())); - mainNode.add(new DefaultMutableTreeNode(new FieldDataVarMainList())); - rootNode.add(mainNode); - } - hashTable.put("rootNode", rootNode); - }catch(Exception e){ - DefaultMutableTreeNode errorNode = new DefaultMutableTreeNode("Error Getting Field Data Information"); - hashTable.put("rootNode", errorNode); - throw e; - } - } - }; - AsynchClientTask updateTree = new AsynchClientTask("updateTree", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - - @Override - public void run(Hashtable hashTable) throws Exception { - DefaultMutableTreeNode rootNode = (DefaultMutableTreeNode)hashTable.get("rootNode"); - getJTree1().setModel(new DefaultTreeModel(rootNode)); - } - }; - ClientTaskDispatcher.dispatch(this, new Hashtable(), new AsynchClientTask[] {gatherInfo, updateTree}); - } -} - - -/** - * Return the JButtonFDCopyRef property value. - * @return javax.swing.JButton - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JButton getJButtonFDCopyRef() { - if (ivjJButtonFDCopyRef == null) { - try { - ivjJButtonFDCopyRef = new javax.swing.JButton(); - ivjJButtonFDCopyRef.setName("JButtonFDCopyRef"); - ivjJButtonFDCopyRef.setText("Copy Func"); - ivjJButtonFDCopyRef.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJButtonFDCopyRef; -} - -/** - * Return the JButtonFDDelete property value. - * @return javax.swing.JButton - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JButton getJButtonFDDelete() { - if (ivjJButtonFDDelete == null) { - try { - ivjJButtonFDDelete = new javax.swing.JButton(); - ivjJButtonFDDelete.setName("JButtonFDDelete"); - ivjJButtonFDDelete.setText("Delete"); - ivjJButtonFDDelete.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJButtonFDDelete; -} - -private JButton ivjJButtonFDCreate; -/** - * Return the JButtonFDFromFile property value. - * @return javax.swing.JButton - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private JButton getJButtonFDCreate() { - if (ivjJButtonFDCreate == null) { - try { - ivjJButtonFDCreate = new javax.swing.JButton(); - ivjJButtonFDCreate.setName("JButtonFDFromCreate"); - ivjJButtonFDCreate.setText("Create..."); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJButtonFDCreate; -} - -private JComboBox jComboBoxCreate; -private static final String FROM_FILE = "from File"; -private static final String FROM_SIM = "from Simulation"; -//private static final String FROM_IMAGEJ = "from ImageJ"; -private JComboBox getCreateJComboBox(){ - if(jComboBoxCreate == null){ - jComboBoxCreate = new JComboBox(new Object[] {FROM_FILE,FROM_SIM/*,FROM_IMAGEJ*/}); - } - return jComboBoxCreate; -} - -/** - * Return the JButtonFDView property value. - * @return javax.swing.JButton - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JButton getJButtonFDView() { - if (ivjJButtonFDView == null) { - try { - ivjJButtonFDView = new javax.swing.JButton(); - ivjJButtonFDView.setName("JButtonFDView"); - ivjJButtonFDView.setText("View..."); - ivjJButtonFDView.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJButtonFDView; -} - -/** - * Return the JPanel1 property value. - * @return javax.swing.JPanel - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JPanel getJPanel1() { - if (ivjJPanel1 == null) { - try { - org.vcell.util.gui.TitledBorderBean ivjLocalBorder; - ivjLocalBorder = new org.vcell.util.gui.TitledBorderBean(); - ivjLocalBorder.setTitleFont(new java.awt.Font("Arial", 1, 14)); - ivjLocalBorder.setTitle("Create New Field Data"); - ivjJPanel1 = new javax.swing.JPanel(); - ivjJPanel1.setName("JPanel1"); - ivjJPanel1.setBorder(ivjLocalBorder); - final java.awt.GridBagLayout gridBagLayout = new java.awt.GridBagLayout(); - gridBagLayout.rowHeights = new int[] {0,0,7}; - ivjJPanel1.setLayout(gridBagLayout); - - java.awt.GridBagConstraints constraintsJButtonFDFromFile = new java.awt.GridBagConstraints(); - constraintsJButtonFDFromFile.gridx = 1; constraintsJButtonFDFromFile.gridy = 1; - constraintsJButtonFDFromFile.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDFromFile.weightx = 1.0; - constraintsJButtonFDFromFile.insets = new java.awt.Insets(4, 4, 4, 4); - getJPanel1().add(getJButtonFDCreate(), constraintsJButtonFDFromFile); - - java.awt.GridBagConstraints constraintsJButtonFDFromSim = new java.awt.GridBagConstraints(); - constraintsJButtonFDFromSim.gridx = 2; constraintsJButtonFDFromSim.gridy = 1; - constraintsJButtonFDFromSim.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDFromSim.weightx = 1.0; - constraintsJButtonFDFromSim.insets = new java.awt.Insets(4, 4, 4, 4); - getJPanel1().add(getCreateJComboBox(), constraintsJButtonFDFromSim); - - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJPanel1; -} - - -/** - * Return the JPanel2 property value. - * @return javax.swing.JPanel - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JPanel getNormalTopPanel() { - if (normalTopPanel == null) { - try { - GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); - gridBagConstraints4.gridx = 2; - gridBagConstraints4.gridy = 1; - GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); - gridBagConstraints21.gridx = 2; - gridBagConstraints21.gridy = 0; - normalTopPanel = new javax.swing.JPanel(); - normalTopPanel.setName("normalTopPanel"); - normalTopPanel.setLayout(new java.awt.GridBagLayout()); - - java.awt.GridBagConstraints constraintsJPanel1 = new java.awt.GridBagConstraints(); - constraintsJPanel1.gridx = 0; constraintsJPanel1.gridy = 0; -constraintsJPanel1.gridheight = 2; - constraintsJPanel1.fill = java.awt.GridBagConstraints.BOTH; - constraintsJPanel1.insets = new java.awt.Insets(4, 4, 4, 4); - getNormalTopPanel().add(getJPanel1(), constraintsJPanel1); - - java.awt.GridBagConstraints constraintsJButtonFDDelete = new java.awt.GridBagConstraints(); - constraintsJButtonFDDelete.gridx = 1; constraintsJButtonFDDelete.gridy = 0; - constraintsJButtonFDDelete.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDDelete.weightx = 0.0; - constraintsJButtonFDDelete.insets = new java.awt.Insets(4, 4, 4, 4); - java.awt.GridBagConstraints constraintsJButtonFDView = new java.awt.GridBagConstraints(); - constraintsJButtonFDView.gridx = 1; constraintsJButtonFDView.gridy = 1; - constraintsJButtonFDView.gridwidth = 1; - constraintsJButtonFDView.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDView.insets = new java.awt.Insets(4, 4, 4, 4); - normalTopPanel.add(getJButtonFDDelete(), constraintsJButtonFDDelete); - normalTopPanel.add(getJButtonFDView(), constraintsJButtonFDView); - normalTopPanel.add(getJPanel(), gridBagConstraints21); - normalTopPanel.add(getJPanel12(), gridBagConstraints4); - } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); - } - } - return normalTopPanel; -} - -public static final int DISPLAY_NORMAL = 0; -public static final int DISPLAY_DATASYMBOLS = 1; -private int displayMode = DISPLAY_NORMAL; -private JPanel dataSymbolsJPanel = null; -private JButton dsAnnotButton = new JButton(); -private JButton dsViewButton = new JButton(); -private JButton dsDataSymbolButton = new JButton(); -public int getDisplayMode(){ - return displayMode; -} -private void setDisplayMode(int newDisplayMode){ - displayMode = newDisplayMode; - if(newDisplayMode == DISPLAY_DATASYMBOLS){ - for (int i = 0; i < getComponentCount(); i++) { - if(getComponent(i) == getNormalTopPanel()){ - remove(getComponent(i)); - break; - }else if(getComponent(i) == dataSymbolsJPanel){ - return; - } - } - if(dataSymbolsJPanel == null){ - dataSymbolsJPanel = new JPanel(); - dataSymbolsJPanel.setName("dataSymbolsPanel"); - //View Button - //JButton viewButton = new JButton(); - dsViewButton.setText("View..."); - dsViewButton.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - jButtonFDView_ActionPerformed(e); - } - }); - dsViewButton.setEnabled(false); - dataSymbolsJPanel.add(dsViewButton); - //view Annotation - //JButton annotButton = new JButton(); - dsAnnotButton.setText("View Annot..."); - dsAnnotButton.addActionListener(viewAnnotAction); - dsAnnotButton.setEnabled(false); - dataSymbolsJPanel.add(dsAnnotButton); - //datasymbol Callback button - //JButton dataSymbolButton = new JButton(); - dsDataSymbolButton.setText("Create Data Symbol..."); - dsDataSymbolButton.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - jButtonFDCopyRef_ActionPerformed(e); - } - }); - dsDataSymbolButton.setEnabled(false); - dataSymbolsJPanel.add(dsDataSymbolButton); - } - java.awt.GridBagConstraints gbc_datasymbolsPanel = new java.awt.GridBagConstraints(); - gbc_datasymbolsPanel.gridx = 0; gbc_datasymbolsPanel.gridy = 0; - gbc_datasymbolsPanel.fill = java.awt.GridBagConstraints.BOTH; - gbc_datasymbolsPanel.insets = new java.awt.Insets(4, 4, 4, 4); - add(dataSymbolsJPanel, gbc_datasymbolsPanel); - - }else{ - for (int i = 0; i < getComponentCount(); i++) { - if(getComponent(i) == dataSymbolsJPanel){ - remove(getComponent(i)); - break; - }else if(getComponent(i) == getNormalTopPanel()){ - return; - } - } - java.awt.GridBagConstraints gbc_normalTopPanel = new java.awt.GridBagConstraints(); - gbc_normalTopPanel.gridx = 0; gbc_normalTopPanel.gridy = 0; - gbc_normalTopPanel.fill = java.awt.GridBagConstraints.BOTH; - gbc_normalTopPanel.insets = new java.awt.Insets(4, 4, 4, 4); - add(getNormalTopPanel(), gbc_normalTopPanel); - } -} -private FieldDataWindowManager.DataSymbolCallBack dataSymbolCallBack = null; -public void setCreateDataSymbolCallBack(FieldDataWindowManager.DataSymbolCallBack dataSymbolCallBack){ - this.dataSymbolCallBack = dataSymbolCallBack; - setDisplayMode((dataSymbolCallBack==null?FieldDataGUIPanel.DISPLAY_NORMAL:FieldDataGUIPanel.DISPLAY_DATASYMBOLS)); -} -/** - * Return the JScrollPane1 property value. - * @return javax.swing.JScrollPane - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JScrollPane getJScrollPane1() { - if (ivjJScrollPane1 == null) { - try { - ivjJScrollPane1 = new javax.swing.JScrollPane(); - ivjJScrollPane1.setName("JScrollPane1"); - getJScrollPane1().setViewportView(getJTree1()); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } - } - return ivjJScrollPane1; -} - -/** - * Return the JTree1 property value. - * @return javax.swing.JTree - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private javax.swing.JTree getJTree1() { - if (ivjJTree1 == null) { - try { - ivjJTree1 = new javax.swing.JTree(); - ivjJTree1.setName("JTree1"); - ivjJTree1.setBounds(0, 0, 516, 346); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - ivjJTree1.addMouseListener(new java.awt.event.MouseAdapter() { - public void mousePressed(MouseEvent e) { - maybeShowPopup(e); - } - - public void mouseReleased(MouseEvent e) { - maybeShowPopup(e); - } - private void maybeShowPopup(MouseEvent e) { - if (e.isPopupTrigger()) { - jPopupMenu.show(e.getComponent(), - e.getX(), e.getY()); - } - } - }); - } - } - return ivjJTree1; -} - -/** - * Called whenever the part throws an exception. - * @param exception java.lang.Throwable - */ -private void handleException(java.lang.Throwable exception) { - - /* Uncomment the following lines to print uncaught exceptions to stdout */ - System.out.println("--------- UNCAUGHT EXCEPTION ---------"); - exception.printStackTrace(System.out); -} - - -/** - * Initializes connections - * @exception java.lang.Exception The exception description. - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private void initConnections() throws java.lang.Exception { - // user code begin {1} - // user code end - getJTree1().addTreeSelectionListener(ivjEventHandler); - getJTree1().addTreeExpansionListener(ivjEventHandler); - getJButtonFDDelete().addActionListener(ivjEventHandler); - getJButtonFDCopyRef().addActionListener(ivjEventHandler); - getJButtonFDCreate().addActionListener(ivjEventHandler); - getJButtonFDView().addActionListener(ivjEventHandler); -} - -/** - * Initialize the class. - */ -/* WARNING: THIS METHOD WILL BE REGENERATED. */ -private void initialize() { - try { - // user code begin {1} - // user code end - setName("FieldDataGUIPanel"); - setLayout(new java.awt.GridBagLayout()); - setSize(676, 430); - - java.awt.GridBagConstraints gbc_normalTopPanel = new java.awt.GridBagConstraints(); - gbc_normalTopPanel.gridx = 0; gbc_normalTopPanel.gridy = 0; - gbc_normalTopPanel.fill = java.awt.GridBagConstraints.BOTH; - gbc_normalTopPanel.insets = new java.awt.Insets(4, 4, 4, 4); - add(getNormalTopPanel(), gbc_normalTopPanel); - - java.awt.GridBagConstraints constraintsJScrollPane1 = new java.awt.GridBagConstraints(); - constraintsJScrollPane1.gridx = 0; constraintsJScrollPane1.gridy = 1; - constraintsJScrollPane1.fill = java.awt.GridBagConstraints.BOTH; - constraintsJScrollPane1.weightx = 1.0; - constraintsJScrollPane1.weighty = 1.0; - constraintsJScrollPane1.insets = new java.awt.Insets(4, 4, 4, 4); - add(getJScrollPane1(), constraintsJScrollPane1); - initConnections(); - connEtoC1(); - } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); - } - // user code begin {2} - // user code end -} - - -public boolean isInitialized(){ - DefaultMutableTreeNode rootNode = - (DefaultMutableTreeNode)getJTree1().getModel().getRoot(); - if(rootNode == null){ - return false; - } - return (rootNode.getUserObject() instanceof InitializedRootNode); -} -/** - * Comment - */ -private void jTree1_ValueChanged(javax.swing.event.TreeSelectionEvent treeSelectionEvent) { - getJButtonFDDelete().setEnabled(false); - getJButtonFDView().setEnabled(false);dsViewButton.setEnabled(false); - getJButtonFDCopyRef().setEnabled(false);dsDataSymbolButton.setEnabled(false); - getJButtonFindRefModel().setEnabled(false); - getJButtonViewAnnot().setEnabled(false);dsAnnotButton.setEnabled(false); - getJButtonCreateGeom().setEnabled(false); - javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); - if(selPath != null){ - javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); + } + + ; + + public void treeCollapsed(javax.swing.event.TreeExpansionEvent event) { + } + + ; + + public void treeExpanded(javax.swing.event.TreeExpansionEvent event) { + if (event.getSource() == FieldDataGUIPanel.this.getFieldDataTree()) + connEtoC6(event); + } + + ; + + public void valueChanged(javax.swing.event.TreeSelectionEvent e) { + if (e.getSource() == FieldDataGUIPanel.this.getFieldDataTree()) + connEtoC2(e); + } + + ; + } + + ; + + /** + * FieldDataGUIPanel constructor comment. + */ + public FieldDataGUIPanel() { + super(); + initialize(); + } + + /** + * connEtoC1: (FieldDataGUIPanel.initialize() --> FieldDataGUIPanel.fieldDataGUIPanel_Initialize()V) + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private void connEtoC1() { + try { + // user code begin {1} + // user code end + this.fieldDataGUIPanel_Initialize(); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + + /** + * connEtoC2: (JTree1.treeSelection.valueChanged(javax.swing.event.TreeSelectionEvent) --> FieldDataGUIPanel.jTree1_ValueChanged(Ljavax.swing.event.TreeSelectionEvent;)V) + * + * @param arg1 javax.swing.event.TreeSelectionEvent + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private void connEtoC2(javax.swing.event.TreeSelectionEvent arg1) { + try { + // user code begin {1} + // user code end + this.jTree1_ValueChanged(arg1); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + + private void connEtoC6(javax.swing.event.TreeExpansionEvent arg1) { + try { + // user code begin {1} + // user code end + this.jTree1_TreeExpanded(arg1); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + private void connEtoC7(java.awt.event.ActionEvent arg1) { + try { + // user code begin {1} + // user code end + this.jButtonFDDelete_ActionPerformed(arg1); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + private void connEtoC8(java.awt.event.ActionEvent arg1) { + try { + // user code begin {1} + // user code end + this.jButtonFDCopyRef_ActionPerformed(arg1); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + private void copyMethod(int copyMode) { + String delimiter = ""; + if (copyMode == COPY_NL) { + delimiter = "\n"; + } else if (copyMode == COPY_CRNL) { + delimiter = "\r\n"; + } else if (copyMode == COPY_CSV) { + delimiter = ","; + } else if (copyMode == COPY_SPACE) { + delimiter = " "; + } + String copyString = ""; + javax.swing.tree.TreePath selPath = getFieldDataTree().getSelectionPath(); + if (selPath != null) { + javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent(); + if (lastPathComponent.equals(getFieldDataTree().getModel().getRoot())) { + int childCount = lastPathComponent.getChildCount(); + for (int i = 0; i < childCount; i += 1) { + if (i != 0) { + copyString += delimiter; + } + copyString += + ((FieldDataMainList) ((DefaultMutableTreeNode) lastPathComponent.getChildAt(i)).getUserObject()).externalDataIdentifier.getName(); + } + } else if (lastPathComponent.getUserObject() instanceof FieldDataOriginList) { + Origin origin = ((FieldDataOriginList) lastPathComponent.getUserObject()).origin; + copyString = origin.getX() + delimiter + origin.getY() + delimiter + origin.getZ(); + } else if (lastPathComponent.getUserObject() instanceof FieldDataExtentList) { + Extent extent = ((FieldDataExtentList) lastPathComponent.getUserObject()).extent; + copyString = extent.getX() + delimiter + extent.getY() + delimiter + extent.getZ(); + } else if (lastPathComponent.getUserObject() instanceof FieldDataISizeList) { + ISize isize = ((FieldDataISizeList) lastPathComponent.getUserObject()).isize; + copyString = isize.getX() + delimiter + isize.getY() + delimiter + isize.getZ(); + } else if (lastPathComponent.getUserObject() instanceof FieldDataTimeList) { + double[] times = ((FieldDataTimeList) lastPathComponent.getUserObject()).times; + for (int i = 0; i < times.length; i += 1) { + if (i != 0) { + copyString += delimiter; + } + copyString += times[i] + ""; + } + } else if (lastPathComponent.getUserObject() instanceof FieldDataMainList) { + ExternalDataIdentifier extDataID = + ((FieldDataMainList) lastPathComponent.getUserObject()).externalDataIdentifier; + copyString = extDataID.getName(); + } else if (lastPathComponent.getUserObject() instanceof FieldDataVarList) { + DataIdentifier dataIdentifier = + ((FieldDataVarList) lastPathComponent.getUserObject()).dataIdentifier; + copyString = dataIdentifier.getName(); + } else if (lastPathComponent.getUserObject() instanceof FieldDataVarMainList) { + int childCount = lastPathComponent.getChildCount(); + for (int i = 0; i < childCount; i += 1) { + if (i != 0) { + copyString += delimiter; + } + copyString += + ((FieldDataVarList) ((DefaultMutableTreeNode) lastPathComponent.getChildAt(i)).getUserObject()).dataIdentifier.getName(); + } + } + if (copyString.length() > 0) { + VCellTransferable.sendToClipboard(copyString); + } + } + } + + private void connEtoC10(java.awt.event.ActionEvent arg1) { + try { + // user code begin {1} + // user code end + this.jButtonFDView_ActionPerformed(arg1); + // user code begin {2} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {3} + // user code end + handleException(ivjExc); + } + } + + /** + * Comment + */ + private void fieldDataGUIPanel_Initialize() { + + getFieldDataTree().getSelectionModel().setSelectionMode(javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION); + + JMenuItem copyMenuItem = new JMenuItem("Copy"); + copyMenuItem.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + copyMethod(COPY_SPACE); + } + }); + JMenuItem copyCSVMenuItem = new JMenuItem("Copy w/ Commas"); + copyCSVMenuItem.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + copyMethod(COPY_CSV); + } + }); + JMenuItem copyNewLineMenuItem = new JMenuItem("Copy w/ LF"); + copyNewLineMenuItem.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + copyMethod(COPY_NL); + } + }); + JMenuItem copyReturnNewLineMenuItem = new JMenuItem("Copy w/ CRLF"); + copyReturnNewLineMenuItem.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + copyMethod(COPY_CRNL); + } + }); + + } + + public void updateJTree(final RequestManager clientRequestManager) { + + if (clientRequestManager == null) { + DefaultMutableTreeNode emptyNode = new DefaultMutableTreeNode("No Info Available"); + getFieldDataTree().setModel(new DefaultTreeModel(emptyNode)); + } else { + DefaultMutableTreeNode startupNode = new DefaultMutableTreeNode("Gathering Field Data Information... (Please wait)"); + getFieldDataTree().setModel(new DefaultTreeModel(startupNode)); + AsynchClientTask gatherInfo = new AsynchClientTask("gatherInfo", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + try { + DocumentManager documentManager = clientRequestManager.getDocumentManager(); + FieldDataDBOperationSpec fdos = FieldDataDBOperationSpec.createGetExtDataIDsSpec(documentManager.getUser()); + FieldDataDBOperationResults fieldDataDBOperationResults = documentManager.fieldDataDBOperation(fdos); + + ExternalDataIdentifier[] externalDataIdentifierArr = fieldDataDBOperationResults.extDataIDArr; + String[] extDataAnnotArr = fieldDataDBOperationResults.extDataAnnotArr; + + TreeMap sortedExtDataIDTreeMap = new TreeMap( + new Comparator() { + public int compare(ExternalDataIdentifier o1, ExternalDataIdentifier o2) { + return o1.getName().compareToIgnoreCase(o2.getName()); + } + } + ); + for (int i = 0; i < externalDataIdentifierArr.length; i += 1) { + sortedExtDataIDTreeMap.put(externalDataIdentifierArr[i], extDataAnnotArr[i]); + } + DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode(new InitializedRootNode( + FIELD_DATA_INFO + (externalDataIdentifierArr.length == 0 ? " (None Defined)" : ""))); + + Iterator> sortIter = sortedExtDataIDTreeMap.entrySet().iterator(); + while (sortIter.hasNext()) { + Entry entry = sortIter.next(); + DefaultMutableTreeNode mainNode = new DefaultMutableTreeNode(new FieldDataMainList(entry.getKey(), entry.getValue())); + mainNode.add(new DefaultMutableTreeNode(new FieldDataVarMainList())); + rootNode.add(mainNode); + } + hashTable.put("rootNode", rootNode); + } catch (Exception e) { + DefaultMutableTreeNode errorNode = new DefaultMutableTreeNode("Error Getting Field Data Information"); + hashTable.put("rootNode", errorNode); + throw e; + } + } + }; + AsynchClientTask updateTree = new AsynchClientTask("updateTree", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + DefaultMutableTreeNode rootNode = (DefaultMutableTreeNode) hashTable.get("rootNode"); + getFieldDataTree().setModel(new DefaultTreeModel(rootNode)); + } + }; + ClientTaskDispatcher.dispatch(this, new Hashtable(), new AsynchClientTask[]{gatherInfo, updateTree}); + } + } + + + /** + * Return the JButtonFDCopyRef property value. + * + * @return javax.swing.JButton + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JButton getJButtonFDCopyRef() { + if (ivjJButtonFDCopyRef == null) { + try { + ivjJButtonFDCopyRef = new javax.swing.JButton(); + ivjJButtonFDCopyRef.setName("JButtonFDCopyRef"); + ivjJButtonFDCopyRef.setText("Copy Func"); + ivjJButtonFDCopyRef.setEnabled(false); + // user code begin {1} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {2} + // user code end + handleException(ivjExc); + } + } + return ivjJButtonFDCopyRef; + } + + /** + * Return the JButtonFDDelete property value. + * + * @return javax.swing.JButton + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JButton getJButtonFDDelete() { + if (ivjJButtonFDDelete == null) { + try { + ivjJButtonFDDelete = new javax.swing.JButton(); + ivjJButtonFDDelete.setName("JButtonFDDelete"); + ivjJButtonFDDelete.setText("Delete"); + ivjJButtonFDDelete.setEnabled(false); + // user code begin {1} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {2} + // user code end + handleException(ivjExc); + } + } + return ivjJButtonFDDelete; + } + + private JButton ivjJButtonFDCreate; + + /** + * Return the JButtonFDFromFile property value. + * + * @return javax.swing.JButton + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private JButton getJButtonFDCreate() { + if (ivjJButtonFDCreate == null) { + try { + ivjJButtonFDCreate = new javax.swing.JButton(); + ivjJButtonFDCreate.setName("JButtonFDFromCreate"); + ivjJButtonFDCreate.setText("Create..."); + // user code begin {1} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {2} + // user code end + handleException(ivjExc); + } + } + return ivjJButtonFDCreate; + } + + private JComboBox jComboBoxCreate; + private static final String FROM_FILE = "from File"; + private static final String FROM_SIM = "from Simulation"; + + //private static final String FROM_IMAGEJ = "from ImageJ"; + private JComboBox getCreateJComboBox() { + if (jComboBoxCreate == null) { + jComboBoxCreate = new JComboBox(new Object[]{FROM_FILE, FROM_SIM/*,FROM_IMAGEJ*/}); + } + return jComboBoxCreate; + } + + /** + * Return the JButtonFDView property value. + * + * @return javax.swing.JButton + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JButton getJButtonFDView() { + if (ivjJButtonFDView == null) { + try { + ivjJButtonFDView = new javax.swing.JButton(); + ivjJButtonFDView.setName("JButtonFDView"); + ivjJButtonFDView.setText("View..."); + ivjJButtonFDView.setEnabled(false); + // user code begin {1} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {2} + // user code end + handleException(ivjExc); + } + } + return ivjJButtonFDView; + } + + /** + * Return the JPanel1 property value. + * + * @return javax.swing.JPanel + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JPanel getJPanel1() { + if (ivjJPanel1 == null) { + try { + org.vcell.util.gui.TitledBorderBean ivjLocalBorder; + ivjLocalBorder = new org.vcell.util.gui.TitledBorderBean(); + ivjLocalBorder.setTitleFont(new java.awt.Font("Arial", 1, 14)); + ivjLocalBorder.setTitle("Create New Field Data"); + ivjJPanel1 = new javax.swing.JPanel(); + ivjJPanel1.setName("JPanel1"); + ivjJPanel1.setBorder(ivjLocalBorder); + final java.awt.GridBagLayout gridBagLayout = new java.awt.GridBagLayout(); + gridBagLayout.rowHeights = new int[]{0, 0, 7}; + ivjJPanel1.setLayout(gridBagLayout); + + java.awt.GridBagConstraints constraintsJButtonFDFromFile = new java.awt.GridBagConstraints(); + constraintsJButtonFDFromFile.gridx = 1; + constraintsJButtonFDFromFile.gridy = 1; + constraintsJButtonFDFromFile.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDFromFile.weightx = 1.0; + constraintsJButtonFDFromFile.insets = new java.awt.Insets(4, 4, 4, 4); + getJPanel1().add(getJButtonFDCreate(), constraintsJButtonFDFromFile); + + java.awt.GridBagConstraints constraintsJButtonFDFromSim = new java.awt.GridBagConstraints(); + constraintsJButtonFDFromSim.gridx = 2; + constraintsJButtonFDFromSim.gridy = 1; + constraintsJButtonFDFromSim.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDFromSim.weightx = 1.0; + constraintsJButtonFDFromSim.insets = new java.awt.Insets(4, 4, 4, 4); + getJPanel1().add(getCreateJComboBox(), constraintsJButtonFDFromSim); + + // user code begin {1} + // user code end + } catch (java.lang.Throwable ivjExc) { + // user code begin {2} + // user code end + handleException(ivjExc); + } + } + return ivjJPanel1; + } + + + /** + * Return the JPanel2 property value. + * + * @return javax.swing.JPanel + */ + /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JPanel getNormalTopPanel() { + if (normalTopPanel == null) { + try { + GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); + gridBagConstraints4.gridx = 2; + gridBagConstraints4.gridy = 1; + GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); + gridBagConstraints21.gridx = 2; + gridBagConstraints21.gridy = 0; + normalTopPanel = new javax.swing.JPanel(); + normalTopPanel.setName("normalTopPanel"); + normalTopPanel.setLayout(new java.awt.GridBagLayout()); + + java.awt.GridBagConstraints constraintsJPanel1 = new java.awt.GridBagConstraints(); + constraintsJPanel1.gridx = 0; + constraintsJPanel1.gridy = 0; + constraintsJPanel1.gridheight = 2; + constraintsJPanel1.fill = java.awt.GridBagConstraints.BOTH; + constraintsJPanel1.insets = new java.awt.Insets(4, 4, 4, 4); + getNormalTopPanel().add(getJPanel1(), constraintsJPanel1); + + java.awt.GridBagConstraints constraintsJButtonFDDelete = new java.awt.GridBagConstraints(); + constraintsJButtonFDDelete.gridx = 1; + constraintsJButtonFDDelete.gridy = 0; + constraintsJButtonFDDelete.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDDelete.weightx = 0.0; + constraintsJButtonFDDelete.insets = new java.awt.Insets(4, 4, 4, 4); + java.awt.GridBagConstraints constraintsJButtonFDView = new java.awt.GridBagConstraints(); + constraintsJButtonFDView.gridx = 1; + constraintsJButtonFDView.gridy = 1; + constraintsJButtonFDView.gridwidth = 1; + constraintsJButtonFDView.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDView.insets = new java.awt.Insets(4, 4, 4, 4); + normalTopPanel.add(getJButtonFDDelete(), constraintsJButtonFDDelete); + normalTopPanel.add(getJButtonFDView(), constraintsJButtonFDView); + normalTopPanel.add(getJPanel(), gridBagConstraints21); + normalTopPanel.add(getJPanel12(), gridBagConstraints4); + } catch (java.lang.Throwable ivjExc) { + handleException(ivjExc); + } + } + return normalTopPanel; + } + + public static final int DISPLAY_NORMAL = 0; + public static final int DISPLAY_DATASYMBOLS = 1; + private int displayMode = DISPLAY_NORMAL; + private JPanel dataSymbolsJPanel = null; + private JButton dsAnnotButton = new JButton(); + private JButton dsViewButton = new JButton(); + private JButton dsDataSymbolButton = new JButton(); + + public int getDisplayMode() { + return displayMode; + } + + private void setDisplayMode(int newDisplayMode) { + displayMode = newDisplayMode; + if (newDisplayMode == DISPLAY_DATASYMBOLS) { + for (int i = 0; i < getComponentCount(); i++) { + if (getComponent(i) == getNormalTopPanel()) { + remove(getComponent(i)); + break; + } else if (getComponent(i) == dataSymbolsJPanel) { + return; + } + } + if (dataSymbolsJPanel == null) { + dataSymbolsJPanel = new JPanel(); + dataSymbolsJPanel.setName("dataSymbolsPanel"); + //View Button + //JButton viewButton = new JButton(); + dsViewButton.setText("View..."); + dsViewButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + jButtonFDView_ActionPerformed(e); + } + }); + dsViewButton.setEnabled(false); + dataSymbolsJPanel.add(dsViewButton); + //view Annotation + //JButton annotButton = new JButton(); + dsAnnotButton.setText("View Annot..."); + dsAnnotButton.addActionListener(viewAnnotAction); + dsAnnotButton.setEnabled(false); + dataSymbolsJPanel.add(dsAnnotButton); + //datasymbol Callback button + //JButton dataSymbolButton = new JButton(); + dsDataSymbolButton.setText("Create Data Symbol..."); + dsDataSymbolButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + jButtonFDCopyRef_ActionPerformed(e); + } + }); + dsDataSymbolButton.setEnabled(false); + dataSymbolsJPanel.add(dsDataSymbolButton); + } + java.awt.GridBagConstraints gbc_datasymbolsPanel = new java.awt.GridBagConstraints(); + gbc_datasymbolsPanel.gridx = 0; + gbc_datasymbolsPanel.gridy = 0; + gbc_datasymbolsPanel.fill = java.awt.GridBagConstraints.BOTH; + gbc_datasymbolsPanel.insets = new java.awt.Insets(4, 4, 4, 4); + add(dataSymbolsJPanel, gbc_datasymbolsPanel); + + } else { + for (int i = 0; i < getComponentCount(); i++) { + if (getComponent(i) == dataSymbolsJPanel) { + remove(getComponent(i)); + break; + } else if (getComponent(i) == getNormalTopPanel()) { + return; + } + } + java.awt.GridBagConstraints gbc_normalTopPanel = new java.awt.GridBagConstraints(); + gbc_normalTopPanel.gridx = 0; + gbc_normalTopPanel.gridy = 0; + gbc_normalTopPanel.fill = java.awt.GridBagConstraints.BOTH; + gbc_normalTopPanel.insets = new java.awt.Insets(4, 4, 4, 4); + add(getNormalTopPanel(), gbc_normalTopPanel); + } + } + + private FieldDataWindowManager.DataSymbolCallBack dataSymbolCallBack = null; + + public void setCreateDataSymbolCallBack(FieldDataWindowManager.DataSymbolCallBack dataSymbolCallBack) { + this.dataSymbolCallBack = dataSymbolCallBack; + setDisplayMode((dataSymbolCallBack == null ? FieldDataGUIPanel.DISPLAY_NORMAL : FieldDataGUIPanel.DISPLAY_DATASYMBOLS)); + } + + + private javax.swing.JScrollPane getMainScrollPanel() { + if (ivjJScrollPane1 == null) { + try { + ivjJScrollPane1 = new javax.swing.JScrollPane(); + ivjJScrollPane1.setName("JScrollPane1"); + getMainScrollPanel().setViewportView(getFieldDataTree()); + } catch (java.lang.Throwable ivjExc) { + handleException(ivjExc); + } + } + return ivjJScrollPane1; + } + + private javax.swing.JTree getFieldDataTree() { + if (ivjJTree1 == null) { + try { + ivjJTree1 = new javax.swing.JTree(); + ivjJTree1.setName("JTree1"); + ivjJTree1.setBounds(0, 0, 516, 346); + } catch (java.lang.Throwable ivjExc) { + handleException(ivjExc); + ivjJTree1.addMouseListener(new java.awt.event.MouseAdapter() { + public void mousePressed(MouseEvent e) { + maybeShowPopup(e); + } + + public void mouseReleased(MouseEvent e) { + maybeShowPopup(e); + } + + private void maybeShowPopup(MouseEvent e) { + if (e.isPopupTrigger()) { + jPopupMenu.show(e.getComponent(), + e.getX(), e.getY()); + } + } + }); + } + } + return ivjJTree1; + } + + private void handleException(java.lang.Throwable exception) { + + /* Uncomment the following lines to print uncaught exceptions to stdout */ + System.out.println("--------- UNCAUGHT EXCEPTION ---------"); + exception.printStackTrace(System.out); + } + + + private void initConnections() throws java.lang.Exception { + getFieldDataTree().addTreeSelectionListener(ivjEventHandler); + getFieldDataTree().addTreeExpansionListener(ivjEventHandler); + getJButtonFDDelete().addActionListener(ivjEventHandler); + getJButtonFDCopyRef().addActionListener(ivjEventHandler); + getJButtonFDCreate().addActionListener(ivjEventHandler); + getJButtonFDView().addActionListener(ivjEventHandler); + } + + + private void initialize() { + try { + // user code begin {1} + // user code end + setName("FieldDataGUIPanel"); + setLayout(new java.awt.GridBagLayout()); + setSize(676, 430); + + java.awt.GridBagConstraints gbc_normalTopPanel = new java.awt.GridBagConstraints(); + gbc_normalTopPanel.gridx = 0; + gbc_normalTopPanel.gridy = 0; + gbc_normalTopPanel.fill = java.awt.GridBagConstraints.BOTH; + gbc_normalTopPanel.insets = new java.awt.Insets(4, 4, 4, 4); + add(getNormalTopPanel(), gbc_normalTopPanel); + + java.awt.GridBagConstraints constraintsJScrollPane1 = new java.awt.GridBagConstraints(); + constraintsJScrollPane1.gridx = 0; + constraintsJScrollPane1.gridy = 1; + constraintsJScrollPane1.fill = java.awt.GridBagConstraints.BOTH; + constraintsJScrollPane1.weightx = 1.0; + constraintsJScrollPane1.weighty = 1.0; + constraintsJScrollPane1.insets = new java.awt.Insets(4, 4, 4, 4); + add(getMainScrollPanel(), constraintsJScrollPane1); + initConnections(); + connEtoC1(); + } catch (java.lang.Throwable ivjExc) { + handleException(ivjExc); + } + } + + + public boolean isInitialized() { + DefaultMutableTreeNode rootNode = + (DefaultMutableTreeNode) getFieldDataTree().getModel().getRoot(); + if (rootNode == null) { + return false; + } + return (rootNode.getUserObject() instanceof InitializedRootNode); + } + + + private void jTree1_ValueChanged(javax.swing.event.TreeSelectionEvent treeSelectionEvent) { + getJButtonFDDelete().setEnabled(false); + getJButtonFDView().setEnabled(false); + dsViewButton.setEnabled(false); + getJButtonFDCopyRef().setEnabled(false); + dsDataSymbolButton.setEnabled(false); + getJButtonFindRefModel().setEnabled(false); + getJButtonViewAnnot().setEnabled(false); + dsAnnotButton.setEnabled(false); + getJButtonCreateGeom().setEnabled(false); + javax.swing.tree.TreePath selPath = getFieldDataTree().getSelectionPath(); + if (selPath != null) { + javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent(); // System.out.println("count="+selPath.getPathCount()+" "+(lastPathComponent != null?lastPathComponent.toString():"null")); - if(lastPathComponent.getUserObject() instanceof FieldDataMainList){ - getJButtonFDDelete().setEnabled(true); - getJButtonFDView().setEnabled(fieldDataWindowManager != null);dsViewButton.setEnabled(fieldDataWindowManager != null); - getJButtonFindRefModel().setEnabled(true); - getJButtonViewAnnot().setEnabled(true);dsAnnotButton.setEnabled(true); - }else if (lastPathComponent.getUserObject() instanceof FieldDataVarList){ - getJButtonFDCopyRef().setEnabled(true);dsDataSymbolButton.setEnabled(true); - getJButtonCreateGeom().setEnabled(true); - } - } -} - -private void jButtonFDFromSim_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - try{ - final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); - - final FieldDataWindowManager.OpenModelInfoHolder simInfoHolder = FieldDataWindowManager.selectOpenModelsFromDesktop(this,fieldDataWindowManager.getRequestManager(),true,"Select Simulation for Field Data",true); - if(simInfoHolder == null){ - PopupGenerator.showErrorDialog(this, "Please open a Bio or Math model containing the spatial (non-compartmental) simulation you wish to use to create a new Field Data"); - return; - } - //Check that the sim is in a state that can be copied - final SimulationInfo simInfo = simInfoHolder.getSimInfo(); - if(simInfo == null){ - throw new Exception("Selected sim '"+simInfoHolder.getSimName()+"' has no simInfo (save your model and retry)."); - } - SimulationStatus simStatus = clientRequestManager.getServerSimulationStatus(simInfo); - if(simStatus != null && (simStatus.isRunning() || simStatus.isStartRequested())){ - throw new Exception("Can't copy 'running' simulation data from sim '"+simInfo.getName()+"'"); - } - - final FieldDataFileOperationSpec fdos = FieldDataFileOperationSpec.createCopySimFieldDataFileOperationSpec( null, - (simInfo.getParentSimulationReference() != null?simInfo.getParentSimulationReference(): simInfo.getSimulationVersion().getVersionKey()), - simInfo.getOwner(), simInfoHolder.getJobIndex(), clientRequestManager.getDocumentManager().getUser()); - - AsynchClientTask[] addTasks = addNewExternalData(this,this,true); - AsynchClientTask[] taskArray = new AsynchClientTask[1 + addTasks.length]; - System.arraycopy(addTasks, 0, taskArray, 1, addTasks.length); // add to the end - - taskArray[0] = new AsynchClientTask("Create Field Data from Simulation", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - public void run(Hashtable hashTable) throws Exception { - FieldDataFileOperationResults fdor = - clientRequestManager.getDocumentManager().fieldDataFileOperation( - FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec( - (simInfo.getParentSimulationReference() != null? - simInfo.getParentSimulationReference(): - simInfo.getSimulationVersion().getVersionKey() - ), - simInfo.getOwner(), - simInfoHolder.getJobIndex())); - //Create (non-editable) info for display - fdos.origin = fdor.origin; - fdos.extent = fdor.extent; - fdos.isize = fdor.iSize; - fdos.times = fdor.times; - fdos.varNames = new String[fdor.dataIdentifierArr.length]; - for(int i=0;i hash = new Hashtable(); - ClientTaskDispatcher.dispatch(this,hash,taskArray,false); - - }catch(UserCancelException e){ - return; - }catch(Exception e){ - PopupGenerator.showErrorDialog(this, "Error creating Field Data from simulation\n"+e.getMessage(), e); - } -} - -private void jButtonFDView_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - if(fieldDataWindowManager == null){ - System.out.println("No FieldDataViewManager available for View action"); - return; - } - javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); - if(selPath != null){ - javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); - if(lastPathComponent.getUserObject() instanceof FieldDataMainList){ - ExternalDataIdentifier edi = ((FieldDataMainList)lastPathComponent.getUserObject()).externalDataIdentifier; - fieldDataWindowManager.viewData(edi); - } - } -} - - -private void jButtonFDFromFile_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - Hashtable hash = new Hashtable(); - - AsynchClientTask[] tasks = fdFromFile(); - ClientTaskDispatcher.dispatch(this, hash, tasks, false, true, null); - -} - -//private void fromImageJ(){ -// //windows debug port in use, netstat -anob | findstr "5000", tasklist | findstr "LISTENER from netstat query" -// AsynchClientTask imageJTask = new AsynchClientTask("contact ImageJ...",AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { -// @Override -// public void run(Hashtable hashTable) throws Exception { -// File imageJFile = ImageJHelper.vcellWantImage(getClientTaskStatusSupport(),"image for new FieldData"); -// hashTable.put(IMAGE_FILE_KEY, imageJFile); -// } -// }; -// AsynchClientTask[] tasks = fdFromFile(); -// tasks = BeanUtils.addElements(new AsynchClientTask[] {imageJTask}, tasks); -// ClientTaskDispatcher.dispatch(this, new Hashtable<>(), tasks, false, true, null); -//} - -String IMAGE_FILE_KEY = "imageFile"; -private AsynchClientTask[] fdFromFile() { - final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); - AsynchClientTask[] addTasks = addNewExternalData(this,this,false); - AsynchClientTask[] taskArray = new AsynchClientTask[2 + addTasks.length]; - System.arraycopy(addTasks, 0, taskArray, 2, addTasks.length); // add to the end - - taskArray[0] = new AsynchClientTask("select a file", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - public void run(Hashtable hashTable) throws Exception { - FieldDataFileOperationSpec argfdos = (FieldDataFileOperationSpec)hashTable.get("argfdos"); - if (argfdos == null && hashTable.get(IMAGE_FILE_KEY) == null) { - File imageFile = DatabaseWindowManager.showFileChooserDialog( - fieldDataWindowManager.getComponent(), FileFilters.FILE_FILTER_FIELDIMAGES, - clientRequestManager.getUserPreferences(),JFileChooser.FILES_AND_DIRECTORIES); - hashTable.put(IMAGE_FILE_KEY, imageFile); - } - } - }; - taskArray[1] = new AsynchClientTask("Import image", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - public void run(Hashtable hashTable) throws Exception { - FieldDataFileOperationSpec fdos = null; - String initFDName = null; - - FieldDataFileOperationSpec argfdos = (FieldDataFileOperationSpec)hashTable.get("argfdos"); - String arginitFDName = (String)hashTable.get("arginitFDName"); - if (argfdos == null) { - File imageFile = (File)hashTable.get(IMAGE_FILE_KEY); - if (imageFile == null) { - return; - } - initFDName = imageFile.getName(); - if(initFDName.indexOf(".vfrap") > -1) - { -/* //read the image dataset from Virtual FRAP xml file - System.out.println("Loading " + initFDName + " ..."); - - AnnotatedImageDataset annotatedImages = null; - String xmlString; - try { - xmlString = XmlUtil.getXMLString(imageFile.getAbsolutePath()); - MicroscopyXmlReader xmlReader = new MicroscopyXmlReader(true); - annotatedImages = xmlReader.getAnnotatedImageDataset(XmlUtil.stringToXML(xmlString, null).getRootElement(), this.getClientTaskStatusSupport()); - OverlayEditorPanelJAI overlayPanel = new OverlayEditorPanelJAI(); - overlayPanel.setImages(annotatedImages.getImageDataset(), 1, 0, new OverlayEditorPanelJAI.AllPixelValuesRange(1, 200) ); - DialogUtils.showComponentCloseDialog(FieldDataGUIPanel.this, overlayPanel, "this is it"); - } catch (Exception e) { - e.printStackTrace(System.out); - } */ - } - else //not a .vfrap file - { - try { - fdos = ClientRequestManager.createFDOSFromImageFile(imageFile,false,null); - } catch (DataFormatException ex) { - throw new Exception("Cannot read image " + imageFile.getAbsolutePath()+"\n"+ex.getMessage()); - } - } - }else{ - fdos = argfdos; - initFDName = arginitFDName; - } - - fdos.owner = clientRequestManager.getDocumentManager().getUser(); - fdos.opType = FieldDataFileOperationSpec.FDOS_ADD; - hashTable.put("fdos", fdos); - hashTable.put("initFDName", initFDName); - //addNewExternalData(clientRequestManager, fdos, initFDName, false); - } - }; - return taskArray; -} - -private void jButtonFDDelete_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - - final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); - - - TreePath selPath = getJTree1().getSelectionPath(); - final DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode)selPath.getLastPathComponent(); - final FieldDataMainList fieldDataMainList = (FieldDataMainList)mainNode.getUserObject(); - - if(!fieldDataMainList.externalDataIdentifier.getOwner().equals( - clientRequestManager.getDocumentManager().getUser())){ - DialogUtils.showErrorDialog(this, "Delete failed: User "+clientRequestManager.getDocumentManager().getUser().getName()+ - "does not own FieldData '"+fieldDataMainList.externalDataIdentifier.getName()+"'"); - } - if(PopupGenerator.showComponentOKCancelDialog( - this, new JLabel("Delete "+fieldDataMainList.externalDataIdentifier.getName()+"?"), - "Confirm Delete") != JOptionPane.OK_OPTION){ - return; - - } - AsynchClientTask CheckRemoveFromDBTask = new AsynchClientTask("Check Field Data references in DB", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - public void run(Hashtable hash) throws Exception { - if(fieldDataWindowManager.findReferencingModels(fieldDataMainList.externalDataIdentifier, false)){ - throw new Exception("Cannot delete Field Data '"+fieldDataMainList.externalDataIdentifier.getName()+ - "' because it is referenced in a Model(s) or Function(s) file."); - } - } - }; - AsynchClientTask RemoveNodeTreeTask = new AsynchClientTask("Remove FieldData tree node", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - public void run(Hashtable hash) throws Exception { - ((DefaultTreeModel)getJTree1().getModel()).removeNodeFromParent(mainNode); - if(((DefaultMutableTreeNode)getJTree1().getModel().getRoot()).getChildCount() == 0){ - updateJTree(clientRequestManager); - } - } - }; - AsynchClientTask RemoveFromDiskAndDBTask = new AsynchClientTask("Remove Field Data from Disk and DB", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - public void run(Hashtable hash) throws Exception { - //Remove from Disk - FieldDataMainList fieldDataMainList = (FieldDataMainList)mainNode.getUserObject(); - FieldDataFileOperationSpec fdos = FieldDataFileOperationSpec.createDeleteFieldDataFileOperationSpec( - fieldDataMainList.externalDataIdentifier); - clientRequestManager.getDocumentManager().fieldDataFileOperation(fdos); - //Remove from DB - fieldDataWindowManager.deleteExternalDataIdentifier(fieldDataMainList.externalDataIdentifier); - } - }; - // - //Execute Field Data Info - JTree tasks - // - AsynchClientTask tasks[] = new AsynchClientTask[] { CheckRemoveFromDBTask,RemoveFromDiskAndDBTask,RemoveNodeTreeTask}; - Hashtable hash = new Hashtable(); - ClientTaskDispatcher.dispatch(this,hash,tasks,false); - -} - private class SelectedTimes{ - private double[] times; - private int selectedIndex; - public SelectedTimes(double[] times, int selectedIndex) { - super(); - this.times = times; - this.selectedIndex = selectedIndex; - } - public double[] getTimes() { - return times; - } - public int getSelectedIndex() { - return selectedIndex; - } - - } -private SelectedTimes selectTimeFromNode(DefaultMutableTreeNode mainNode){ - Enumeration children = mainNode.children(); - double[] times = null; - while(children.hasMoreElements()){ - DefaultMutableTreeNode child = (DefaultMutableTreeNode)children.nextElement(); - if(child.getUserObject() instanceof FieldDataTimeList){ - times = ((FieldDataTimeList)child.getUserObject()).times; - break; - } - } - - if(times != null && times.length > 1){ - String[] timesStr = new String[times.length]; - for(int i=0;i jcBeg = new JComboBox(Arrays.asList(timesStr).toArray(new Object[0])); - jp.add(jcBeg); - - if(PopupGenerator.showComponentOKCancelDialog(this, jp,"Select Field Data timepoint") ==JOptionPane.OK_OPTION){ - return new SelectedTimes(times, jcBeg.getSelectedIndex()); - } - throw UserCancelException.CANCEL_GENERIC; - } - return new SelectedTimes(new double[] {0.0}, 0); -} -private void jButtonFDCopyRef_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - if(actionEvent.getSource() == getJButtonCreateGeom()){ - DocumentWindow.showGeometryCreationWarning(FieldDataGUIPanel.this); - return; - } - TreePath selPath = getJTree1().getSelectionPath(); - final DefaultMutableTreeNode varNode = (DefaultMutableTreeNode)selPath.getLastPathComponent(); - final DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode)varNode.getParent().getParent(); - - SelectedTimes selectedTimes = null; - try{ - selectedTimes = selectTimeFromNode(mainNode); - }catch(UserCancelException e){ - return; - } - double selectedTime = selectedTimes.getTimes()[selectedTimes.getSelectedIndex()]; - - if(actionEvent.getSource() == getJButtonFDCopyRef()){ - String fieldFunctionReference = - SimulationData.createCanonicalFieldFunctionSyntax( - ((FieldDataMainList)mainNode.getUserObject()).externalDataIdentifier.getName(), - ((FieldDataVarList)varNode.getUserObject()).dataIdentifier.getName(), - selectedTime,((FieldDataVarList)varNode.getUserObject()).dataIdentifier.getVariableType().getTypeName()); - - VCellTransferable.sendToClipboard(fieldFunctionReference); - }else if(actionEvent.getSource() == dsDataSymbolButton && dataSymbolCallBack != null){ - dataSymbolCallBack.createDataSymbol( - ((FieldDataMainList)mainNode.getUserObject()).externalDataIdentifier, - ((FieldDataVarList)varNode.getUserObject()).dataIdentifier.getName(), - ((FieldDataVarList)varNode.getUserObject()).dataIdentifier.getVariableType(), - selectedTime); - } - -} - -private void jTree1_TreeExpanded(final javax.swing.event.TreeExpansionEvent treeExpansionEvent) { - if(fieldDataWindowManager == null){ - return; - } - // - //Determine if we need to get Info - // - javax.swing.tree.TreePath expPath = null; - try{ - expPath = treeExpansionEvent.getPath(); - if(expPath != null){ - DefaultMutableTreeNode mainNode = (javax.swing.tree.DefaultMutableTreeNode)expPath.getLastPathComponent(); + if (lastPathComponent.getUserObject() instanceof FieldDataMainList) { + getJButtonFDDelete().setEnabled(true); + getJButtonFDView().setEnabled(fieldDataWindowManager != null); + dsViewButton.setEnabled(fieldDataWindowManager != null); + getJButtonFindRefModel().setEnabled(true); + getJButtonViewAnnot().setEnabled(true); + dsAnnotButton.setEnabled(true); + } else if (lastPathComponent.getUserObject() instanceof FieldDataVarList) { + getJButtonFDCopyRef().setEnabled(true); + dsDataSymbolButton.setEnabled(true); + getJButtonCreateGeom().setEnabled(true); + } + } + } + + private void jButtonFDFromSim_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + try { + final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); + + final FieldDataWindowManager.OpenModelInfoHolder simInfoHolder = FieldDataWindowManager.selectOpenModelsFromDesktop(this, fieldDataWindowManager.getRequestManager(), true, "Select Simulation for Field Data", true); + if (simInfoHolder == null) { + PopupGenerator.showErrorDialog(this, "Please open a Bio or Math model containing the spatial (non-compartmental) simulation you wish to use to create a new Field Data"); + return; + } + //Check that the sim is in a state that can be copied + final SimulationInfo simInfo = simInfoHolder.getSimInfo(); + if (simInfo == null) { + throw new Exception("Selected sim '" + simInfoHolder.getSimName() + "' has no simInfo (save your model and retry)."); + } + SimulationStatus simStatus = clientRequestManager.getServerSimulationStatus(simInfo); + if (simStatus != null && (simStatus.isRunning() || simStatus.isStartRequested())) { + throw new Exception("Can't copy 'running' simulation data from sim '" + simInfo.getName() + "'"); + } + + final FieldDataFileOperationSpec fdos = FieldDataFileOperationSpec.createCopySimFieldDataFileOperationSpec(null, + (simInfo.getParentSimulationReference() != null ? simInfo.getParentSimulationReference() : simInfo.getSimulationVersion().getVersionKey()), + simInfo.getOwner(), simInfoHolder.getJobIndex(), clientRequestManager.getDocumentManager().getUser()); + + AsynchClientTask[] addTasks = addNewExternalData(this, this, true); + AsynchClientTask[] taskArray = new AsynchClientTask[1 + addTasks.length]; + System.arraycopy(addTasks, 0, taskArray, 1, addTasks.length); // add to the end + + taskArray[0] = new AsynchClientTask("Create Field Data from Simulation", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + public void run(Hashtable hashTable) throws Exception { + FieldDataFileOperationResults fdor = + clientRequestManager.getDocumentManager().fieldDataFileOperation( + FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec( + (simInfo.getParentSimulationReference() != null ? + simInfo.getParentSimulationReference() : + simInfo.getSimulationVersion().getVersionKey() + ), + simInfo.getOwner(), + simInfoHolder.getJobIndex())); + //Create (non-editable) info for display + fdos.origin = fdor.origin; + fdos.extent = fdor.extent; + fdos.isize = fdor.iSize; + fdos.times = fdor.times; + fdos.varNames = new String[fdor.dataIdentifierArr.length]; + for (int i = 0; i < fdor.dataIdentifierArr.length; i += 1) { + fdos.varNames[i] = + (fdor.dataIdentifierArr[i].getVariableType().equals(VariableType.VOLUME) ? "(vol) " : "") + + (fdor.dataIdentifierArr[i].getVariableType().equals(VariableType.MEMBRANE) ? "(mbr) " : "") + + fdor.dataIdentifierArr[i].getName(); + } + hashTable.put("fdos", fdos); + hashTable.put("initFDName", simInfo.getName()); + //addNewExternalData(clientRequestManager, fdos, simInfoHolder.simInfo.getName(), true); + } + }; + + Hashtable hash = new Hashtable(); + ClientTaskDispatcher.dispatch(this, hash, taskArray, false); + + } catch (UserCancelException e) { + return; + } catch (Exception e) { + PopupGenerator.showErrorDialog(this, "Error creating Field Data from simulation\n" + e.getMessage(), e); + } + } + + private void jButtonFDView_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + if (fieldDataWindowManager == null) { + System.out.println("No FieldDataViewManager available for View action"); + return; + } + javax.swing.tree.TreePath selPath = getFieldDataTree().getSelectionPath(); + if (selPath != null) { + javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent(); + if (lastPathComponent.getUserObject() instanceof FieldDataMainList) { + ExternalDataIdentifier edi = ((FieldDataMainList) lastPathComponent.getUserObject()).externalDataIdentifier; + fieldDataWindowManager.viewData(edi); + } + } + } + + + private void jButtonFDFromFile_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + Hashtable hash = new Hashtable(); + + AsynchClientTask[] tasks = fdFromFile(); + ClientTaskDispatcher.dispatch(this, hash, tasks, false, true, null); + + } + + String IMAGE_FILE_KEY = "imageFile"; + + private AsynchClientTask[] fdFromFile() { + final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); + AsynchClientTask[] addTasks = addNewExternalData(this, this, false); + AsynchClientTask[] taskArray = new AsynchClientTask[2 + addTasks.length]; + System.arraycopy(addTasks, 0, taskArray, 2, addTasks.length); // add to the end + + taskArray[0] = new AsynchClientTask("select a file", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + public void run(Hashtable hashTable) throws Exception { + FieldDataFileOperationSpec argfdos = (FieldDataFileOperationSpec) hashTable.get("argfdos"); + if (argfdos == null && hashTable.get(IMAGE_FILE_KEY) == null) { + File imageFile = DatabaseWindowManager.showFileChooserDialog( + fieldDataWindowManager.getComponent(), FileFilters.FILE_FILTER_FIELDIMAGES, + clientRequestManager.getUserPreferences(), JFileChooser.FILES_AND_DIRECTORIES); + hashTable.put(IMAGE_FILE_KEY, imageFile); + } + } + }; + taskArray[1] = new AsynchClientTask("Import image", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + public void run(Hashtable hashTable) throws Exception { + FieldDataFileOperationSpec fdos = null; + String initFDName = null; + + FieldDataFileOperationSpec argfdos = (FieldDataFileOperationSpec) hashTable.get("argfdos"); + String arginitFDName = (String) hashTable.get("arginitFDName"); + if (argfdos == null) { + File imageFile = (File) hashTable.get(IMAGE_FILE_KEY); + if (imageFile == null) { + return; + } + initFDName = imageFile.getName(); + if (initFDName.indexOf(".vfrap") > -1) { + } else //not a .vfrap file + { + try { + fdos = ClientRequestManager.createFDOSFromImageFile(imageFile, false, null); + } catch (DataFormatException ex) { + throw new Exception("Cannot read image " + imageFile.getAbsolutePath() + "\n" + ex.getMessage()); + } + } + } else { + fdos = argfdos; + initFDName = arginitFDName; + } + + fdos.owner = clientRequestManager.getDocumentManager().getUser(); + fdos.opType = FieldDataFileOperationSpec.FDOS_ADD; + hashTable.put("fdos", fdos); + hashTable.put("initFDName", initFDName); + //addNewExternalData(clientRequestManager, fdos, initFDName, false); + } + }; + return taskArray; + } + + private void jButtonFDDelete_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + + final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); + + + TreePath selPath = getFieldDataTree().getSelectionPath(); + final DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode) selPath.getLastPathComponent(); + final FieldDataMainList fieldDataMainList = (FieldDataMainList) mainNode.getUserObject(); + + if (!fieldDataMainList.externalDataIdentifier.getOwner().equals( + clientRequestManager.getDocumentManager().getUser())) { + DialogUtils.showErrorDialog(this, "Delete failed: User " + clientRequestManager.getDocumentManager().getUser().getName() + + "does not own FieldData '" + fieldDataMainList.externalDataIdentifier.getName() + "'"); + } + if (PopupGenerator.showComponentOKCancelDialog( + this, new JLabel("Delete " + fieldDataMainList.externalDataIdentifier.getName() + "?"), + "Confirm Delete") != JOptionPane.OK_OPTION) { + return; + + } + AsynchClientTask CheckRemoveFromDBTask = new AsynchClientTask("Check Field Data references in DB", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + public void run(Hashtable hash) throws Exception { + if (fieldDataWindowManager.findReferencingModels(fieldDataMainList.externalDataIdentifier, false)) { + throw new Exception("Cannot delete Field Data '" + fieldDataMainList.externalDataIdentifier.getName() + + "' because it is referenced in a Model(s) or Function(s) file."); + } + } + }; + AsynchClientTask RemoveNodeTreeTask = new AsynchClientTask("Remove FieldData tree node", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + public void run(Hashtable hash) throws Exception { + ((DefaultTreeModel) getFieldDataTree().getModel()).removeNodeFromParent(mainNode); + if (((DefaultMutableTreeNode) getFieldDataTree().getModel().getRoot()).getChildCount() == 0) { + updateJTree(clientRequestManager); + } + } + }; + AsynchClientTask RemoveFromDiskAndDBTask = new AsynchClientTask("Remove Field Data from Disk and DB", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + public void run(Hashtable hash) throws Exception { + //Remove from Disk + FieldDataMainList fieldDataMainList = (FieldDataMainList) mainNode.getUserObject(); + FieldDataFileOperationSpec fdos = FieldDataFileOperationSpec.createDeleteFieldDataFileOperationSpec( + fieldDataMainList.externalDataIdentifier); + clientRequestManager.getDocumentManager().fieldDataFileOperation(fdos); + //Remove from DB + fieldDataWindowManager.deleteExternalDataIdentifier(fieldDataMainList.externalDataIdentifier); + } + }; + // + //Execute Field Data Info - JTree tasks + // + AsynchClientTask tasks[] = new AsynchClientTask[]{CheckRemoveFromDBTask, RemoveFromDiskAndDBTask, RemoveNodeTreeTask}; + Hashtable hash = new Hashtable(); + ClientTaskDispatcher.dispatch(this, hash, tasks, false); + + } + + private class SelectedTimes { + private double[] times; + private int selectedIndex; + + public SelectedTimes(double[] times, int selectedIndex) { + super(); + this.times = times; + this.selectedIndex = selectedIndex; + } + + public double[] getTimes() { + return times; + } + + public int getSelectedIndex() { + return selectedIndex; + } + + } + + private SelectedTimes selectTimeFromNode(DefaultMutableTreeNode mainNode) { + Enumeration children = mainNode.children(); + double[] times = null; + while (children.hasMoreElements()) { + DefaultMutableTreeNode child = (DefaultMutableTreeNode) children.nextElement(); + if (child.getUserObject() instanceof FieldDataTimeList) { + times = ((FieldDataTimeList) child.getUserObject()).times; + break; + } + } + + if (times != null && times.length > 1) { + String[] timesStr = new String[times.length]; + for (int i = 0; i < times.length; i += 1) { + timesStr[i] = times[i] + ""; + } + JPanel jp = new JPanel(); + BoxLayout bl = new BoxLayout(jp, BoxLayout.X_AXIS); + jp.setLayout(bl); + JComboBox jcBeg = new JComboBox(Arrays.asList(timesStr).toArray(new Object[0])); + jp.add(jcBeg); + + if (PopupGenerator.showComponentOKCancelDialog(this, jp, "Select Field Data timepoint") == JOptionPane.OK_OPTION) { + return new SelectedTimes(times, jcBeg.getSelectedIndex()); + } + throw UserCancelException.CANCEL_GENERIC; + } + return new SelectedTimes(new double[]{0.0}, 0); + } + + private void jButtonFDCopyRef_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + if (actionEvent.getSource() == getJButtonCreateGeom()) { + DocumentWindow.showGeometryCreationWarning(FieldDataGUIPanel.this); + return; + } + TreePath selPath = getFieldDataTree().getSelectionPath(); + final DefaultMutableTreeNode varNode = (DefaultMutableTreeNode) selPath.getLastPathComponent(); + final DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode) varNode.getParent().getParent(); + + SelectedTimes selectedTimes = null; + try { + selectedTimes = selectTimeFromNode(mainNode); + } catch (UserCancelException e) { + return; + } + double selectedTime = selectedTimes.getTimes()[selectedTimes.getSelectedIndex()]; + + if (actionEvent.getSource() == getJButtonFDCopyRef()) { + String fieldFunctionReference = + SimulationData.createCanonicalFieldFunctionSyntax( + ((FieldDataMainList) mainNode.getUserObject()).externalDataIdentifier.getName(), + ((FieldDataVarList) varNode.getUserObject()).dataIdentifier.getName(), + selectedTime, ((FieldDataVarList) varNode.getUserObject()).dataIdentifier.getVariableType().getTypeName()); + + VCellTransferable.sendToClipboard(fieldFunctionReference); + } else if (actionEvent.getSource() == dsDataSymbolButton && dataSymbolCallBack != null) { + dataSymbolCallBack.createDataSymbol( + ((FieldDataMainList) mainNode.getUserObject()).externalDataIdentifier, + ((FieldDataVarList) varNode.getUserObject()).dataIdentifier.getName(), + ((FieldDataVarList) varNode.getUserObject()).dataIdentifier.getVariableType(), + selectedTime); + } + + } + + private void jTree1_TreeExpanded(final javax.swing.event.TreeExpansionEvent treeExpansionEvent) { + if (fieldDataWindowManager == null) { + return; + } + // + //Determine if we need to get Info + // + javax.swing.tree.TreePath expPath = null; + try { + expPath = treeExpansionEvent.getPath(); + if (expPath != null) { + DefaultMutableTreeNode mainNode = (javax.swing.tree.DefaultMutableTreeNode) expPath.getLastPathComponent(); // if(mainNode.equals(getJTree1().getModel().getRoot())){ // System.out.println("Root Node expanded"); // } - if(mainNode.getUserObject() instanceof FieldDataMainList){ - if(mainNode.getChildCount() > 1){//Already populated - return; - } - refreshMainNode(mainNode); - }else{ - return; - } - }else{ - return; - } - }catch(Exception e){ - PopupGenerator.showErrorDialog(this, "Error getting Field Data Info\n"+e.getMessage(), e); - return; - } - -} - -public void refreshExternalDataIdentifierNode(ExternalDataIdentifier refreshEDI){ - DefaultMutableTreeNode root = (DefaultMutableTreeNode)getJTree1().getModel().getRoot(); - if(root != null){ - int childCount = root.getChildCount(); - for(int i=0;i hash) throws Exception { - FieldDataMainList fieldDataMainList = (FieldDataMainList)mainNode.getUserObject(); - final FieldDataFileOperationResults fieldDataFileOperationResults = - clientRequestManager.getDocumentManager(). - fieldDataFileOperation( - FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec( - fieldDataMainList.externalDataIdentifier.getKey(), - clientRequestManager.getDocumentManager().getUser(), - FieldDataFileOperationSpec.JOBINDEX_DEFAULT) - ); - hash.put(FDOR_INFO,fieldDataFileOperationResults); - } - }; - - AsynchClientTask FieldDataInfoTreeUpdate = new AsynchClientTask("Update Field Data GUI", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - public void run(Hashtable hash){ - try{ - FieldDataFileOperationResults fieldDataFileOperationResults = - (FieldDataFileOperationResults)hash.get(FDOR_INFO); - Arrays.sort(fieldDataFileOperationResults.dataIdentifierArr, - new Comparator(){ - public int compare(DataIdentifier o1, DataIdentifier o2) { - return o1.getName().compareToIgnoreCase(o2.getName()); - } - } - ); - FieldDataMainList fieldDataMainList = (FieldDataMainList)mainNode.getUserObject(); - final DefaultMutableTreeNode isizeNode = - new DefaultMutableTreeNode(new FieldDataISizeList(fieldDataFileOperationResults.iSize)); - final DefaultMutableTreeNode originNode = - new DefaultMutableTreeNode(new FieldDataOriginList(fieldDataFileOperationResults.origin)); - final DefaultMutableTreeNode extentNode = - new DefaultMutableTreeNode(new FieldDataExtentList(fieldDataFileOperationResults.extent)); - final DefaultMutableTreeNode timeNode = - new DefaultMutableTreeNode(new FieldDataTimeList(fieldDataFileOperationResults.times)); - final DefaultMutableTreeNode idNode = - new DefaultMutableTreeNode(new FieldDataIDList(fieldDataMainList.externalDataIdentifier.getKey())); - ((DefaultTreeModel)getJTree1().getModel()).insertNodeInto(isizeNode,mainNode,0); - ((DefaultTreeModel)getJTree1().getModel()).insertNodeInto(originNode,mainNode,1); - ((DefaultTreeModel)getJTree1().getModel()).insertNodeInto(extentNode,mainNode,2); - ((DefaultTreeModel)getJTree1().getModel()).insertNodeInto(timeNode,mainNode,3); - ((DefaultTreeModel)getJTree1().getModel()).insertNodeInto(idNode,mainNode,4); - for(int i=0;i hash = new Hashtable(); - ClientTaskDispatcher.dispatch(this,hash,tasks,false); -} - -/** - * main entrypoint - starts the part when it is run as an application - * @param args java.lang.String[] - */ -public static void main(java.lang.String[] args) { - try { - javax.swing.JFrame frame = new javax.swing.JFrame(); - FieldDataGUIPanel aFieldDataGUIPanel; - aFieldDataGUIPanel = new FieldDataGUIPanel(); - frame.setContentPane(aFieldDataGUIPanel); - frame.setSize(aFieldDataGUIPanel.getSize()); - frame.addWindowListener(new java.awt.event.WindowAdapter() { - public void windowClosing(java.awt.event.WindowEvent e) { - System.exit(0); - }; - }); - frame.setVisible(true); - java.awt.Insets insets = frame.getInsets(); - frame.setSize(frame.getWidth() + insets.left + insets.right, frame.getHeight() + insets.top + insets.bottom); - frame.setVisible(true); - } catch (Throwable exception) { - System.err.println("Exception occurred in main() of javax.swing.JPanel"); - exception.printStackTrace(System.out); - } -} - -public void setFieldDataWindowManager(FieldDataWindowManager fdwm){ - fieldDataWindowManager = fdwm; -} - -public void checkFieldDataName(String fieldDataName) throws Exception{ - if(fieldDataName == null || fieldDataName.length() == 0 || - !fieldDataName.equals(TokenMangler.fixTokenStrict(fieldDataName))){ - throw new Exception("Field Data names can contain only letters,digits and underscores"); - } - //Check to see if this name is already used - DefaultMutableTreeNode rootNode = (DefaultMutableTreeNode)this.getJTree1().getModel().getRoot(); - if(!rootNode.getUserObject().toString().startsWith(FIELD_DATA_INFO)) { - updateJTree(fieldDataWindowManager.getLocalRequestManager()); - rootNode = (DefaultMutableTreeNode)this.getJTree1().getModel().getRoot(); - } - for(int i=0;i hashTable) throws Exception { - //Check if this is ImageJ op, if so, this task unnecessary - if(hashTable.get(USER_DEFINED_FDOS) != null && hashTable.get(FIELD_NAME) != null) { - return; - } - //Allow user to review/change info about fielddata - FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec)hashTable.get("fdos"); - String initialExtDataName = (String)hashTable.get("initFDName"); - - fdos.specEDI = null; - - FieldDataInfoPanel fdip = new FieldDataInfoPanel(); - fdip.setSimulationMode(isFromSimulation); - fdip.initISize(fdos.isize); - fdip.initIOrigin(fdos.origin); - fdip.initIExtent(fdos.extent); - fdip.initTimes(fdos.times); - fdip.initNames(TokenMangler.fixTokenStrict(initialExtDataName), fdos.varNames); - fdip.setAnnotation(fdos.annotation); - - FieldDataFileOperationSpec userDefinedFDOS = new FieldDataFileOperationSpec(); - while(true) { - int choice = PopupGenerator.showComponentOKCancelDialog(requester, fdip, "Create new field data"); - if (choice == JOptionPane.OK_OPTION){ - //Check values - try{ - userDefinedFDOS.extent = fdip.getExtent(); - }catch(Exception e){ - PopupGenerator.showErrorDialog(requester, "Problem with Extent values. Please re-enter.\n"+e.getMessage()+"\nTry Again.", e); - continue; - } - try{ - userDefinedFDOS.origin = fdip.getOrigin(); - }catch(Exception e){ - PopupGenerator.showErrorDialog(requester, "Problem with Origin values. Please re-enter.\n"+e.getMessage()+"\nTry Again.", e); - continue; - } - try{ - userDefinedFDOS.varNames = fdip.getVariableNames(); - }catch(Exception e){ - PopupGenerator.showErrorDialog(requester, "Problem with Variable names. Please re-enter.\n"+e.getMessage()+"\nTry Again.", e); - continue; - } - userDefinedFDOS.annotation = fdip.getAnnotation(); - userDefinedFDOS.times = fdip.getTimes(); - try{ - fieldDataGUIPanel.checkFieldDataName(fdip.getFieldName()); - }catch(Exception e){ - PopupGenerator.showErrorDialog(requester, "Error saving Field Data Name to Database. Try again.\n"+e.getMessage(), e); - continue; - } - hashTable.put(USER_DEFINED_FDOS, userDefinedFDOS); - hashTable.put(FIELD_NAME, fdip.getFieldName()); - break; - } else { - throw UserCancelException.CANCEL_GENERIC; - } - } - } - }; - - AsynchClientTask task2 = new AsynchClientTask("saving field data", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - @Override - public void run(Hashtable hashTable) throws Exception { - //Add to Server Disk - //save Database - FieldDataFileOperationSpec tempFDOS = (FieldDataFileOperationSpec)hashTable.get(USER_DEFINED_FDOS); - String fieldName = (String)hashTable.get(FIELD_NAME); - - FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec)hashTable.get("fdos"); - DocumentManager documentManager = clientRequestManager.getDocumentManager(); - FieldDataDBOperationSpec newExtDataIDSpec = FieldDataDBOperationSpec.createSaveNewExtDataIDSpec(documentManager.getUser(),fieldName,tempFDOS.annotation); - tempFDOS.specEDI = documentManager.fieldDataDBOperation(newExtDataIDSpec).extDataID; - fdos.specEDI = tempFDOS.specEDI; - fdos.annotation = tempFDOS.annotation; - - try{ - if(!isFromSimulation){ - fdos.extent = tempFDOS.extent; - fdos.origin = tempFDOS.origin; - fdos.varNames = tempFDOS.varNames; - fdos.times = tempFDOS.times; - // - //Subvolumes and Regions NOT implemented now - // - fdos.cartesianMesh = CartesianMesh.createSimpleCartesianMesh(fdos.origin, fdos.extent, fdos.isize, - new RegionImage(new VCImageUncompressed(null, new byte[fdos.isize.getXYZ()],//empty regions - fdos.extent, fdos.isize.getX(),fdos.isize.getY(),fdos.isize.getZ()), - 0,null,null,RegionImage.NO_SMOOTHING)); - } - - //Add to Server Disk - documentManager.fieldDataFileOperation(fdos); - } catch (Exception e) { - try{ - //try to cleanup new ExtDataID - documentManager.fieldDataDBOperation(FieldDataDBOperationSpec.createDeleteExtDataIDSpec(fdos.specEDI)); - }catch(Exception e2){ - //ignore - } - fdos.specEDI = null; - throw e; - } - } - }; - - AsynchClientTask task3 = new AsynchClientTask("refreshing field data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - @Override - public void run(Hashtable hashTable) throws Exception { - FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec)hashTable.get("fdos"); - - DefaultMutableTreeNode root = ((DefaultMutableTreeNode)fieldDataGUIPanel.getJTree1().getModel().getRoot()); - if (root.getChildCount() == 0) { - fieldDataGUIPanel.updateJTree(clientRequestManager); - } else { - int alphabeticalIndex = -1; - for(int i=0;i 0){ - alphabeticalIndex = i; - break; - } - } - if (alphabeticalIndex == -1){ - alphabeticalIndex = root.getChildCount(); - } - DefaultMutableTreeNode mainNode = new DefaultMutableTreeNode(new FieldDataMainList(fdos.specEDI,fdos.annotation)); - mainNode.add(new DefaultMutableTreeNode(new FieldDataVarMainList())); - ((DefaultTreeModel)fieldDataGUIPanel.getJTree1().getModel()).insertNodeInto(mainNode, root, alphabeticalIndex); - } - } - }; - - return new AsynchClientTask[] { task1, task2, task3 }; -} - -/** - * This method initializes jButtonFindRefModel - * - * @return javax.swing.JButton - */ -private JButton getJButtonFindRefModel() { - if (jButtonFindRefModel == null) { - jButtonFindRefModel = new JButton(); - jButtonFindRefModel.setText("Model Refs..."); - jButtonFindRefModel.setEnabled(false); - jButtonFindRefModel.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - TreePath selPath = getJTree1().getSelectionPath(); - DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode)selPath.getLastPathComponent(); - if(mainNode.getUserObject() instanceof FieldDataMainList){ - final ExternalDataIdentifier extDataID = ((FieldDataMainList)mainNode.getUserObject()).externalDataIdentifier; - - AsynchClientTask task1 = new AsynchClientTask("find model references", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { - - @Override - public void run(Hashtable hashTable) throws Exception { - fieldDataWindowManager.findReferencingModels(extDataID,true); - } - }; - ClientTaskDispatcher.dispatch(FieldDataGUIPanel.this, new Hashtable(), new AsynchClientTask[] { task1 }, false); - } - } - }); - } - return jButtonFindRefModel; -} - -/** - * This method initializes jPanel - * - * @return javax.swing.JPanel - */ -private JPanel getJPanel() { - if (jPanel == null) { - GridBagConstraints gridBagConstraints = new GridBagConstraints(); - gridBagConstraints.fill = GridBagConstraints.HORIZONTAL; - gridBagConstraints.gridx = 1; - gridBagConstraints.gridy = 0; - gridBagConstraints.weightx = 1.0; - gridBagConstraints.insets = new Insets(4, 4, 4, 4); - GridBagConstraints gridBagConstraints2 = new GridBagConstraints(); - gridBagConstraints2.gridx = 0; - gridBagConstraints2.insets = new Insets(4, 4, 4, 4); - gridBagConstraints2.gridy = 0; - jPanel = new JPanel(); - jPanel.setLayout(new GridBagLayout()); - jPanel.add(getJButtonCreateGeom(), gridBagConstraints2); - jPanel.add(getJButtonFindRefModel(), gridBagConstraints); - } - return jPanel; -} - -/** - * This method initializes jButtonCopyInfo - * - * @return javax.swing.JButton - */ -private JButton getJButtonCreateGeom() { - if (jButtonCreateGeom == null) { - jButtonCreateGeom = new JButton(); - jButtonCreateGeom.setEnabled(false); - jButtonCreateGeom.setText("Create Geom"); - jButtonCreateGeom.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - try { - RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); - javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); - javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); - if(lastPathComponent.getUserObject() instanceof FieldDataVarList){ - DataIdentifier dataIdentifier = - ((FieldDataVarList)lastPathComponent.getUserObject()).dataIdentifier; - - TreePath ppPath = selPath.getParentPath().getParentPath(); - javax.swing.tree.DefaultMutableTreeNode ppLastPathComp = (javax.swing.tree.DefaultMutableTreeNode)ppPath.getLastPathComponent(); - if(ppLastPathComp.getUserObject() instanceof FieldDataMainList){ - ExternalDataIdentifier extDataID = - ((FieldDataMainList)ppLastPathComp.getUserObject()).externalDataIdentifier; - - final OpenModelInfoHolder openModelInfoHolder = - FieldDataWindowManager.selectOpenModelsFromDesktop(FieldDataGUIPanel.this,fieldDataWindowManager.getRequestManager(),false,"Select BioModel or MathModel to receive new geometry",false); - if(openModelInfoHolder == null){ - DialogUtils.showErrorDialog(FieldDataGUIPanel.this, - "Before proceeding, please open a Biomodel application or Mathmodel you wish to apply a new Field Data Geometry to"); - return; - } - - AsynchClientTask applyGeomTask = new AsynchClientTask("apply geometry",AsynchClientTask.TASKTYPE_SWING_BLOCKING) { - @Override - public void run(Hashtable hashTable) throws Exception { - Geometry newGeom = (Geometry)hashTable.get("doc"); - final String OK_OPTION = "Ok"; - if(openModelInfoHolder instanceof FDSimMathModelInfo){ - Version version = ((FDSimMathModelInfo)openModelInfoHolder).getMathModelVersion(); - String modelName = (version==null?"NoName":version.getName()); - if(newGeom.getName() == null){ - newGeom.setName(modelName+"_"+BeanUtils.generateDateTimeString()); - } - String message = "Confirm Setting new FieldData derived geometry on MathModel '"+modelName+"'"; - if(DialogUtils.showWarningDialog(FieldDataGUIPanel.this, message, new String[] {OK_OPTION,"Cancel"}, OK_OPTION).equals(OK_OPTION)){ - ((FDSimMathModelInfo)openModelInfoHolder).getMathDescription().setGeometry(newGeom); - } - }else if(openModelInfoHolder instanceof FDSimBioModelInfo){ - Version version = ((FDSimBioModelInfo)openModelInfoHolder).getBioModelVersion(); - String modelName = (version==null?"NoName":version.getName()); - String simContextName = ((FDSimBioModelInfo)openModelInfoHolder).getSimulationContext().getName(); - if(newGeom.getName() == null){ - newGeom.setName(modelName+"_"+simContextName+"_"+BeanUtils.generateDateTimeString()); - } - String message = "Confirm Setting new FieldData derived geometry on BioModel '"+modelName+"' , Application '"+simContextName+"'"; - if(DialogUtils.showWarningDialog(FieldDataGUIPanel.this, message, new String[] {OK_OPTION,"Cancel"}, OK_OPTION).equals(OK_OPTION)){ - ((FDSimBioModelInfo)openModelInfoHolder).getSimulationContext().setGeometry(newGeom); - } - } - } - }; - VCDocument.GeomFromFieldDataCreationInfo geomFromFieldDataCreationInfo = - new VCDocument.GeomFromFieldDataCreationInfo( - extDataID,dataIdentifier.getName()); - AsynchClientTask[] createGeomTask = clientRequestManager.createNewGeometryTasks(fieldDataWindowManager, - geomFromFieldDataCreationInfo, - new AsynchClientTask[] {applyGeomTask}, - "Apply Geometry"); - - Hashtable hash = new Hashtable(); - hash.put(ClientRequestManager.GUI_PARENT, fieldDataWindowManager.getComponent()); - ClientTaskDispatcher.dispatch(FieldDataGUIPanel.this, hash, - createGeomTask, false,false,null,true); - - } - - } - }catch (UserCancelException e1) { - //ignore - }catch (Exception e1) { - e1.printStackTrace(); - DialogUtils.showErrorDialog(FieldDataGUIPanel.this, e1.getMessage()); - } - -// jButtonFDCopyRef_ActionPerformed(e); - - - - //fieldDataWindowManager.newDocument(VCDocument.GEOMETRY_DOC, option); -// copyMethod(COPY_CRNL); -//// javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); -//// if(selPath != null){ -//// javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); -//// copyMethod(lastPathComponent, copyMode); -//// } -//// String copyString = ""; -//// javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); -//// if(lastPathComponent.equals(getJTree1().getModel().getRoot())){ -//// int childCount = lastPathComponent.getChildCount(); -//// for(int i=0;i 0 ){ -//// VCellTransferable.sendToClipboard(copyString); -//// } -//// } - } - }); - } - return jButtonCreateGeom; -} - -/** - * This method initializes jPanel1 - * - * @return javax.swing.JPanel - */ -private JPanel getJPanel12() { - if (jPanel1 == null) { - GridBagConstraints gridBagConstraints3 = new GridBagConstraints(); - gridBagConstraints3.gridx = 1; - gridBagConstraints3.insets = new Insets(4, 4, 4, 4); - gridBagConstraints3.fill = GridBagConstraints.HORIZONTAL; - gridBagConstraints3.weightx = 1.0; - gridBagConstraints3.gridy = 0; - GridBagConstraints gridBagConstraints1 = new GridBagConstraints(); - gridBagConstraints1.fill = GridBagConstraints.NONE; - gridBagConstraints1.gridx = 0; - gridBagConstraints1.gridy = 0; - gridBagConstraints1.insets = new Insets(4, 4, 4, 4); - jPanel1 = new JPanel(); - jPanel1.setLayout(new GridBagLayout()); - jPanel1.add(getJButtonFDCopyRef(), gridBagConstraints1); - jPanel1.add(getJButtonViewAnnot(), gridBagConstraints3); - } - return jPanel1; -} - -/** - * This method initializes jButtonViewAnnot - * - * @return javax.swing.JButton - */ -ActionListener viewAnnotAction = new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent e) { - javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath(); - if(selPath != null){ - javax.swing.tree.DefaultMutableTreeNode lastPathComponent = - (javax.swing.tree.DefaultMutableTreeNode)selPath.getLastPathComponent(); - if(lastPathComponent.getUserObject() instanceof FieldDataMainList){ - PopupGenerator.showInfoDialog(FieldDataGUIPanel.this, - ((FieldDataMainList)(lastPathComponent.getUserObject())).extDataAnnot); - } - } - } -}; -private JButton getJButtonViewAnnot() { - if (jButtonViewAnnot == null) { - jButtonViewAnnot = new JButton(); - jButtonViewAnnot.setText("View Annot..."); - jButtonViewAnnot.setEnabled(false); - jButtonViewAnnot.addActionListener(viewAnnotAction); - } - return jButtonViewAnnot; -} + if (mainNode.getUserObject() instanceof FieldDataMainList) { + if (mainNode.getChildCount() > 1) {//Already populated + return; + } + refreshMainNode(mainNode); + } else { + return; + } + } else { + return; + } + } catch (Exception e) { + PopupGenerator.showErrorDialog(this, "Error getting Field Data Info\n" + e.getMessage(), e); + return; + } + + } + + public void refreshExternalDataIdentifierNode(ExternalDataIdentifier refreshEDI) { + DefaultMutableTreeNode root = (DefaultMutableTreeNode) getFieldDataTree().getModel().getRoot(); + if (root != null) { + int childCount = root.getChildCount(); + for (int i = 0; i < childCount; i += 1) { + DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode) root.getChildAt(i); + FieldDataMainList fieldDataMainList = (FieldDataMainList) mainNode.getUserObject(); + if (fieldDataMainList.externalDataIdentifier.equals(refreshEDI)) { + refreshMainNode(mainNode); + return; + } + } + } + } + + private void refreshMainNode(final DefaultMutableTreeNode mainNode) { + final boolean isMainExpanded = getFieldDataTree().isExpanded(new TreePath(mainNode.getPath())); + final boolean isVarExpanded = getFieldDataTree().isExpanded( + new TreePath(((DefaultMutableTreeNode) mainNode.getLastChild()).getPath())); + //Remove all children from Main node in a Tree safe way + DefaultMutableTreeNode root = (DefaultMutableTreeNode) getFieldDataTree().getModel().getRoot(); + int mainNodeIndex = + ((DefaultTreeModel) getFieldDataTree().getModel()).getIndexOfChild(root, mainNode); + ((DefaultTreeModel) getFieldDataTree().getModel()).removeNodeFromParent(mainNode); + mainNode.removeAllChildren(); + final DefaultMutableTreeNode varNode = new DefaultMutableTreeNode(new FieldDataVarMainList()); + mainNode.add(varNode); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(mainNode, root, mainNodeIndex); + // + //Create thread-safe tasks to get Field Data Info and update JTree + // + final String FDOR_INFO = "FDOR_INFO"; + final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); + + AsynchClientTask FieldDataInfoTask = new AsynchClientTask("Gather Field Data info", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + public void run(Hashtable hash) throws Exception { + FieldDataMainList fieldDataMainList = (FieldDataMainList) mainNode.getUserObject(); + final FieldDataFileOperationResults fieldDataFileOperationResults = + clientRequestManager.getDocumentManager(). + fieldDataFileOperation( + FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec( + fieldDataMainList.externalDataIdentifier.getKey(), + clientRequestManager.getDocumentManager().getUser(), + FieldDataFileOperationSpec.JOBINDEX_DEFAULT) + ); + hash.put(FDOR_INFO, fieldDataFileOperationResults); + } + }; + + AsynchClientTask FieldDataInfoTreeUpdate = new AsynchClientTask("Update Field Data GUI", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + public void run(Hashtable hash) { + try { + FieldDataFileOperationResults fieldDataFileOperationResults = + (FieldDataFileOperationResults) hash.get(FDOR_INFO); + Arrays.sort(fieldDataFileOperationResults.dataIdentifierArr, + new Comparator() { + public int compare(DataIdentifier o1, DataIdentifier o2) { + return o1.getName().compareToIgnoreCase(o2.getName()); + } + } + ); + FieldDataMainList fieldDataMainList = (FieldDataMainList) mainNode.getUserObject(); + final DefaultMutableTreeNode isizeNode = + new DefaultMutableTreeNode(new FieldDataISizeList(fieldDataFileOperationResults.iSize)); + final DefaultMutableTreeNode originNode = + new DefaultMutableTreeNode(new FieldDataOriginList(fieldDataFileOperationResults.origin)); + final DefaultMutableTreeNode extentNode = + new DefaultMutableTreeNode(new FieldDataExtentList(fieldDataFileOperationResults.extent)); + final DefaultMutableTreeNode timeNode = + new DefaultMutableTreeNode(new FieldDataTimeList(fieldDataFileOperationResults.times)); + final DefaultMutableTreeNode idNode = + new DefaultMutableTreeNode(new FieldDataIDList(fieldDataMainList.externalDataIdentifier.getKey())); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(isizeNode, mainNode, 0); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(originNode, mainNode, 1); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(extentNode, mainNode, 2); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(timeNode, mainNode, 3); + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto(idNode, mainNode, 4); + for (int i = 0; i < fieldDataFileOperationResults.dataIdentifierArr.length; i += 1) { + ((DefaultTreeModel) getFieldDataTree().getModel()).insertNodeInto( + new DefaultMutableTreeNode( + new FieldDataVarList(fieldDataFileOperationResults.dataIdentifierArr[i])), + varNode, varNode.getChildCount()); + } + if (isMainExpanded) { + getFieldDataTree().expandPath(new TreePath(mainNode.getPath())); + } + if (isVarExpanded) { + getFieldDataTree().expandPath(new TreePath(varNode.getPath())); + } + } catch (Throwable e) { + hash.put(ClientTaskDispatcher.TASK_ABORTED_BY_ERROR, e); + } + } + }; + + // + //Execute Field Data Info - JTree tasks + // + AsynchClientTask tasks[] = new AsynchClientTask[]{FieldDataInfoTask, FieldDataInfoTreeUpdate}; + Hashtable hash = new Hashtable(); + ClientTaskDispatcher.dispatch(this, hash, tasks, false); + } + + /** + * main entrypoint - starts the part when it is run as an application + * + * @param args java.lang.String[] + */ + public static void main(java.lang.String[] args) { + try { + javax.swing.JFrame frame = new javax.swing.JFrame(); + FieldDataGUIPanel aFieldDataGUIPanel; + aFieldDataGUIPanel = new FieldDataGUIPanel(); + frame.setContentPane(aFieldDataGUIPanel); + frame.setSize(aFieldDataGUIPanel.getSize()); + frame.addWindowListener(new java.awt.event.WindowAdapter() { + public void windowClosing(java.awt.event.WindowEvent e) { + System.exit(0); + } + + ; + }); + frame.setVisible(true); + java.awt.Insets insets = frame.getInsets(); + frame.setSize(frame.getWidth() + insets.left + insets.right, frame.getHeight() + insets.top + insets.bottom); + frame.setVisible(true); + } catch (Throwable exception) { + System.err.println("Exception occurred in main() of javax.swing.JPanel"); + exception.printStackTrace(System.out); + } + } + + public void setFieldDataWindowManager(FieldDataWindowManager fdwm) { + fieldDataWindowManager = fdwm; + } + + public void checkFieldDataName(String fieldDataName) throws Exception { + if (fieldDataName == null || fieldDataName.length() == 0 || + !fieldDataName.equals(TokenMangler.fixTokenStrict(fieldDataName))) { + throw new Exception("Field Data names can contain only letters,digits and underscores"); + } + //Check to see if this name is already used + DefaultMutableTreeNode rootNode = (DefaultMutableTreeNode) this.getFieldDataTree().getModel().getRoot(); + if (!rootNode.getUserObject().toString().startsWith(FIELD_DATA_INFO)) { + updateJTree(fieldDataWindowManager.getLocalRequestManager()); + rootNode = (DefaultMutableTreeNode) this.getFieldDataTree().getModel().getRoot(); + } + for (int i = 0; i < rootNode.getChildCount(); i += 1) { + ExternalDataIdentifier extDataID = + ((FieldDataMainList) ((DefaultMutableTreeNode) rootNode.getChildAt(i)).getUserObject()).externalDataIdentifier; + if (fieldDataName.equals(extDataID.getName())) { + throw new Exception("New Field Data name " + fieldDataName + " already used."); + } + } + } + + public static AsynchClientTask[] addNewExternalData(final Component requester, final FieldDataGUIPanel fieldDataGUIPanel, final boolean isFromSimulation) { + + final RequestManager clientRequestManager = fieldDataGUIPanel.fieldDataWindowManager.getLocalRequestManager(); + + AsynchClientTask task1 = new AsynchClientTask("creating field data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + //Check if this is ImageJ op, if so, this task unnecessary + if (hashTable.get(USER_DEFINED_FDOS) != null && hashTable.get(FIELD_NAME) != null) { + return; + } + //Allow user to review/change info about fielddata + FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec) hashTable.get("fdos"); + String initialExtDataName = (String) hashTable.get("initFDName"); + + fdos.specEDI = null; + + FieldDataInfoPanel fdip = new FieldDataInfoPanel(); + fdip.setSimulationMode(isFromSimulation); + fdip.initISize(fdos.isize); + fdip.initIOrigin(fdos.origin); + fdip.initIExtent(fdos.extent); + fdip.initTimes(fdos.times); + fdip.initNames(TokenMangler.fixTokenStrict(initialExtDataName), fdos.varNames); + fdip.setAnnotation(fdos.annotation); + + FieldDataFileOperationSpec userDefinedFDOS = new FieldDataFileOperationSpec(); + while (true) { + int choice = PopupGenerator.showComponentOKCancelDialog(requester, fdip, "Create new field data"); + if (choice == JOptionPane.OK_OPTION) { + //Check values + try { + userDefinedFDOS.extent = fdip.getExtent(); + } catch (Exception e) { + PopupGenerator.showErrorDialog(requester, "Problem with Extent values. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); + continue; + } + try { + userDefinedFDOS.origin = fdip.getOrigin(); + } catch (Exception e) { + PopupGenerator.showErrorDialog(requester, "Problem with Origin values. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); + continue; + } + try { + userDefinedFDOS.varNames = fdip.getVariableNames(); + } catch (Exception e) { + PopupGenerator.showErrorDialog(requester, "Problem with Variable names. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); + continue; + } + userDefinedFDOS.annotation = fdip.getAnnotation(); + userDefinedFDOS.times = fdip.getTimes(); + try { + fieldDataGUIPanel.checkFieldDataName(fdip.getFieldName()); + } catch (Exception e) { + PopupGenerator.showErrorDialog(requester, "Error saving Field Data Name to Database. Try again.\n" + e.getMessage(), e); + continue; + } + hashTable.put(USER_DEFINED_FDOS, userDefinedFDOS); + hashTable.put(FIELD_NAME, fdip.getFieldName()); + break; + } else { + throw UserCancelException.CANCEL_GENERIC; + } + } + } + }; + + AsynchClientTask task2 = new AsynchClientTask("saving field data", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + @Override + public void run(Hashtable hashTable) throws Exception { + //Add to Server Disk + //save Database + FieldDataFileOperationSpec tempFDOS = (FieldDataFileOperationSpec) hashTable.get(USER_DEFINED_FDOS); + String fieldName = (String) hashTable.get(FIELD_NAME); + + FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec) hashTable.get("fdos"); + DocumentManager documentManager = clientRequestManager.getDocumentManager(); + FieldDataDBOperationSpec newExtDataIDSpec = FieldDataDBOperationSpec.createSaveNewExtDataIDSpec(documentManager.getUser(), fieldName, tempFDOS.annotation); + tempFDOS.specEDI = documentManager.fieldDataDBOperation(newExtDataIDSpec).extDataID; + fdos.specEDI = tempFDOS.specEDI; + fdos.annotation = tempFDOS.annotation; + + try { + if (!isFromSimulation) { + fdos.extent = tempFDOS.extent; + fdos.origin = tempFDOS.origin; + fdos.varNames = tempFDOS.varNames; + fdos.times = tempFDOS.times; + // + //Subvolumes and Regions NOT implemented now + // + fdos.cartesianMesh = CartesianMesh.createSimpleCartesianMesh(fdos.origin, fdos.extent, fdos.isize, + new RegionImage(new VCImageUncompressed(null, new byte[fdos.isize.getXYZ()],//empty regions + fdos.extent, fdos.isize.getX(), fdos.isize.getY(), fdos.isize.getZ()), + 0, null, null, RegionImage.NO_SMOOTHING)); + } + + //Add to Server Disk + documentManager.fieldDataFileOperation(fdos); + } catch (Exception e) { + try { + //try to cleanup new ExtDataID + documentManager.fieldDataDBOperation(FieldDataDBOperationSpec.createDeleteExtDataIDSpec(fdos.specEDI)); + } catch (Exception e2) { + //ignore + } + fdos.specEDI = null; + throw e; + } + } + }; + + AsynchClientTask task3 = new AsynchClientTask("refreshing field data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + @Override + public void run(Hashtable hashTable) throws Exception { + FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec) hashTable.get("fdos"); + + DefaultMutableTreeNode root = ((DefaultMutableTreeNode) fieldDataGUIPanel.getFieldDataTree().getModel().getRoot()); + if (root.getChildCount() == 0) { + fieldDataGUIPanel.updateJTree(clientRequestManager); + } else { + int alphabeticalIndex = -1; + for (int i = 0; i < root.getChildCount(); i += 1) { + if ((((FieldDataMainList) ((DefaultMutableTreeNode) root.getChildAt(i)).getUserObject())).externalDataIdentifier.getName(). + compareToIgnoreCase(fdos.specEDI.getName()) > 0) { + alphabeticalIndex = i; + break; + } + } + if (alphabeticalIndex == -1) { + alphabeticalIndex = root.getChildCount(); + } + DefaultMutableTreeNode mainNode = new DefaultMutableTreeNode(new FieldDataMainList(fdos.specEDI, fdos.annotation)); + mainNode.add(new DefaultMutableTreeNode(new FieldDataVarMainList())); + ((DefaultTreeModel) fieldDataGUIPanel.getFieldDataTree().getModel()).insertNodeInto(mainNode, root, alphabeticalIndex); + } + } + }; + + return new AsynchClientTask[]{task1, task2, task3}; + } + + /** + * This method initializes jButtonFindRefModel + * + * @return javax.swing.JButton + */ + private JButton getJButtonFindRefModel() { + if (jButtonFindRefModel == null) { + jButtonFindRefModel = new JButton(); + jButtonFindRefModel.setText("Model Refs..."); + jButtonFindRefModel.setEnabled(false); + jButtonFindRefModel.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + TreePath selPath = getFieldDataTree().getSelectionPath(); + DefaultMutableTreeNode mainNode = (DefaultMutableTreeNode) selPath.getLastPathComponent(); + if (mainNode.getUserObject() instanceof FieldDataMainList) { + final ExternalDataIdentifier extDataID = ((FieldDataMainList) mainNode.getUserObject()).externalDataIdentifier; + + AsynchClientTask task1 = new AsynchClientTask("find model references", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + + @Override + public void run(Hashtable hashTable) throws Exception { + fieldDataWindowManager.findReferencingModels(extDataID, true); + } + }; + ClientTaskDispatcher.dispatch(FieldDataGUIPanel.this, new Hashtable(), new AsynchClientTask[]{task1}, false); + } + } + }); + } + return jButtonFindRefModel; + } + + /** + * This method initializes jPanel + * + * @return javax.swing.JPanel + */ + private JPanel getJPanel() { + if (jPanel == null) { + GridBagConstraints gridBagConstraints = new GridBagConstraints(); + gridBagConstraints.fill = GridBagConstraints.HORIZONTAL; + gridBagConstraints.gridx = 1; + gridBagConstraints.gridy = 0; + gridBagConstraints.weightx = 1.0; + gridBagConstraints.insets = new Insets(4, 4, 4, 4); + GridBagConstraints gridBagConstraints2 = new GridBagConstraints(); + gridBagConstraints2.gridx = 0; + gridBagConstraints2.insets = new Insets(4, 4, 4, 4); + gridBagConstraints2.gridy = 0; + jPanel = new JPanel(); + jPanel.setLayout(new GridBagLayout()); + jPanel.add(getJButtonCreateGeom(), gridBagConstraints2); + jPanel.add(getJButtonFindRefModel(), gridBagConstraints); + } + return jPanel; + } + + /** + * This method initializes jButtonCopyInfo + * + * @return javax.swing.JButton + */ + private JButton getJButtonCreateGeom() { + if (jButtonCreateGeom == null) { + jButtonCreateGeom = new JButton(); + jButtonCreateGeom.setEnabled(false); + jButtonCreateGeom.setText("Create Geom"); + jButtonCreateGeom.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + try { + RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); + javax.swing.tree.TreePath selPath = getFieldDataTree().getSelectionPath(); + javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent(); + if (lastPathComponent.getUserObject() instanceof FieldDataVarList) { + DataIdentifier dataIdentifier = + ((FieldDataVarList) lastPathComponent.getUserObject()).dataIdentifier; + + TreePath ppPath = selPath.getParentPath().getParentPath(); + javax.swing.tree.DefaultMutableTreeNode ppLastPathComp = (javax.swing.tree.DefaultMutableTreeNode) ppPath.getLastPathComponent(); + if (ppLastPathComp.getUserObject() instanceof FieldDataMainList) { + ExternalDataIdentifier extDataID = + ((FieldDataMainList) ppLastPathComp.getUserObject()).externalDataIdentifier; + + final OpenModelInfoHolder openModelInfoHolder = + FieldDataWindowManager.selectOpenModelsFromDesktop(FieldDataGUIPanel.this, fieldDataWindowManager.getRequestManager(), false, "Select BioModel or MathModel to receive new geometry", false); + if (openModelInfoHolder == null) { + DialogUtils.showErrorDialog(FieldDataGUIPanel.this, + "Before proceeding, please open a Biomodel application or Mathmodel you wish to apply a new Field Data Geometry to"); + return; + } + + AsynchClientTask applyGeomTask = new AsynchClientTask("apply geometry", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + @Override + public void run(Hashtable hashTable) throws Exception { + Geometry newGeom = (Geometry) hashTable.get("doc"); + final String OK_OPTION = "Ok"; + if (openModelInfoHolder instanceof FDSimMathModelInfo) { + Version version = ((FDSimMathModelInfo) openModelInfoHolder).getMathModelVersion(); + String modelName = (version == null ? "NoName" : version.getName()); + if (newGeom.getName() == null) { + newGeom.setName(modelName + "_" + BeanUtils.generateDateTimeString()); + } + String message = "Confirm Setting new FieldData derived geometry on MathModel '" + modelName + "'"; + if (DialogUtils.showWarningDialog(FieldDataGUIPanel.this, message, new String[]{OK_OPTION, "Cancel"}, OK_OPTION).equals(OK_OPTION)) { + ((FDSimMathModelInfo) openModelInfoHolder).getMathDescription().setGeometry(newGeom); + } + } else if (openModelInfoHolder instanceof FDSimBioModelInfo) { + Version version = ((FDSimBioModelInfo) openModelInfoHolder).getBioModelVersion(); + String modelName = (version == null ? "NoName" : version.getName()); + String simContextName = ((FDSimBioModelInfo) openModelInfoHolder).getSimulationContext().getName(); + if (newGeom.getName() == null) { + newGeom.setName(modelName + "_" + simContextName + "_" + BeanUtils.generateDateTimeString()); + } + String message = "Confirm Setting new FieldData derived geometry on BioModel '" + modelName + "' , Application '" + simContextName + "'"; + if (DialogUtils.showWarningDialog(FieldDataGUIPanel.this, message, new String[]{OK_OPTION, "Cancel"}, OK_OPTION).equals(OK_OPTION)) { + ((FDSimBioModelInfo) openModelInfoHolder).getSimulationContext().setGeometry(newGeom); + } + } + } + }; + VCDocument.GeomFromFieldDataCreationInfo geomFromFieldDataCreationInfo = + new VCDocument.GeomFromFieldDataCreationInfo( + extDataID, dataIdentifier.getName()); + AsynchClientTask[] createGeomTask = clientRequestManager.createNewGeometryTasks(fieldDataWindowManager, + geomFromFieldDataCreationInfo, + new AsynchClientTask[]{applyGeomTask}, + "Apply Geometry"); + + Hashtable hash = new Hashtable(); + hash.put(ClientRequestManager.GUI_PARENT, fieldDataWindowManager.getComponent()); + ClientTaskDispatcher.dispatch(FieldDataGUIPanel.this, hash, + createGeomTask, false, false, null, true); + + } + + } + } catch (UserCancelException e1) { + //ignore + } catch (Exception e1) { + e1.printStackTrace(); + DialogUtils.showErrorDialog(FieldDataGUIPanel.this, e1.getMessage()); + } + } + }); + } + return jButtonCreateGeom; + } + + /** + * This method initializes jPanel1 + * + * @return javax.swing.JPanel + */ + private JPanel getJPanel12() { + if (jPanel1 == null) { + GridBagConstraints gridBagConstraints3 = new GridBagConstraints(); + gridBagConstraints3.gridx = 1; + gridBagConstraints3.insets = new Insets(4, 4, 4, 4); + gridBagConstraints3.fill = GridBagConstraints.HORIZONTAL; + gridBagConstraints3.weightx = 1.0; + gridBagConstraints3.gridy = 0; + GridBagConstraints gridBagConstraints1 = new GridBagConstraints(); + gridBagConstraints1.fill = GridBagConstraints.NONE; + gridBagConstraints1.gridx = 0; + gridBagConstraints1.gridy = 0; + gridBagConstraints1.insets = new Insets(4, 4, 4, 4); + jPanel1 = new JPanel(); + jPanel1.setLayout(new GridBagLayout()); + jPanel1.add(getJButtonFDCopyRef(), gridBagConstraints1); + jPanel1.add(getJButtonViewAnnot(), gridBagConstraints3); + } + return jPanel1; + } + + /** + * This method initializes jButtonViewAnnot + * + * @return javax.swing.JButton + */ + ActionListener viewAnnotAction = new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + javax.swing.tree.TreePath selPath = getFieldDataTree().getSelectionPath(); + if (selPath != null) { + javax.swing.tree.DefaultMutableTreeNode lastPathComponent = + (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent(); + if (lastPathComponent.getUserObject() instanceof FieldDataMainList) { + PopupGenerator.showInfoDialog(FieldDataGUIPanel.this, + ((FieldDataMainList) (lastPathComponent.getUserObject())).extDataAnnot); + } + } + } + }; + + private JButton getJButtonViewAnnot() { + if (jButtonViewAnnot == null) { + jButtonViewAnnot = new JButton(); + jButtonViewAnnot.setText("View Annot..."); + jButtonViewAnnot.setEnabled(false); + jButtonViewAnnot.addActionListener(viewAnnotAction); + } + return jButtonViewAnnot; + } } diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index b4ec52db3f..7325e4054b 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -52,455 +52,476 @@ import cbit.vcell.resource.PropertyLoader; import cbit.vcell.simdata.SimulationData; -public class FieldDataDBOperationDriver{ - private final static Logger lg = LogManager.getLogger(FieldDataDBOperationDriver.class); - - private static String DATE_FORMAT_STRING = "'DD-MON-YYYY HH24:MI:SS'"; - - private static Connection liveConnection = null; - private static Timer liveConnectionTimer = null; - - private static synchronized void restartLiveConnectionTimer(){ - if(liveConnectionTimer == null){ - liveConnectionTimer = - new Timer(5*60*1000, - new ActionListener(){ - public void actionPerformed(ActionEvent e) { - closeConnection(); - }} - ); - liveConnectionTimer.setRepeats(false); - } - liveConnectionTimer.restart(); - } - private static synchronized void closeConnection(){ +public class FieldDataDBOperationDriver { + private final static Logger lg = LogManager.getLogger(FieldDataDBOperationDriver.class); + + private static String DATE_FORMAT_STRING = "'DD-MON-YYYY HH24:MI:SS'"; + + private static Connection liveConnection = null; + private static Timer liveConnectionTimer = null; + + private static synchronized void restartLiveConnectionTimer() { + if (liveConnectionTimer == null) { + liveConnectionTimer = + new Timer(5 * 60 * 1000, + new ActionListener() { + public void actionPerformed(ActionEvent e) { + closeConnection(); + } + } + ); + liveConnectionTimer.setRepeats(false); + } + liveConnectionTimer.restart(); + } + + private static synchronized void closeConnection() { // System.err.println("connection Closed"); - if(liveConnection != null){ - try{liveConnection.close();}catch(Exception e){lg.error(e.getMessage(), e);} - liveConnection = null; - } - } - private static synchronized Connection getConnection() throws Exception{ - - restartLiveConnectionTimer(); - - if(liveConnection != null){ + if (liveConnection != null) { + try { + liveConnection.close(); + } catch (Exception e) { + lg.error(e.getMessage(), e); + } + liveConnection = null; + } + } + + private static synchronized Connection getConnection() throws Exception { + + restartLiveConnectionTimer(); + + if (liveConnection != null) { // System.err.println("connection Re-used"); - return liveConnection; - } + return liveConnection; + } // System.err.println("connection Created"); - String dbDriverName = PropertyLoader.getProperty(PropertyLoader.dbDriverName, null); - String dbConnectURL = PropertyLoader.getProperty(PropertyLoader.dbConnectURL, null); - String dbSchemaUser = PropertyLoader.getProperty(PropertyLoader.dbUserid, null); - String dbPassword = PropertyLoader.getSecretValue(PropertyLoader.dbPasswordValue, PropertyLoader.dbPasswordFile); - try{ - Class.forName(dbDriverName); - liveConnection = java.sql.DriverManager.getConnection(dbConnectURL,dbSchemaUser,dbPassword); - liveConnection.setReadOnly(true); - return liveConnection; - }catch(Exception e){ - throw new Exception("FieldDataDBOperationDriver: Couldn't get database connection",e); - } - - } - public static FieldDataDBOperationResults fieldDataDBOperation(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { - - if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_COPY_NO_CONFLICT){ - //get all current ExtDataIDs - ExternalDataIdentifier[] existingExtDataIDArr = - FieldDataDBOperationDriver.fieldDataDBOperation( - con, keyFactory, user,FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; - //Rename FieldFunc names if necessary - Hashtable newNameOrigNameHash = new Hashtable(); - for(int i=0;i oldNameNewIDHash = - new Hashtable(); - Hashtable oldNameOldExtDataIDKey = - new Hashtable(); - String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); - for(int i=0;i newNameOrigNameHash = new Hashtable(); + for (int i = 0; i < fieldDataDBOperationSpec.sourceNames.length; i += 1) { + String newFieldFuncName = fieldDataDBOperationSpec.sourceNames[i]; + while (true) { + boolean bNameConflictExists = false; + for (int j = 0; j < existingExtDataIDArr.length; j += 1) { + if (existingExtDataIDArr[j].getName().equals(newFieldFuncName)) { + bNameConflictExists = true; + break; + } + } + bNameConflictExists = + bNameConflictExists || newNameOrigNameHash.containsKey(newFieldFuncName); + if (!bNameConflictExists) { + newNameOrigNameHash.put(newFieldFuncName, fieldDataDBOperationSpec.sourceNames[i]); + break; + } + newFieldFuncName = TokenMangler.getNextEnumeratedToken(newFieldFuncName); + } + } + //Add new ExternalDataIdentifier (FieldData ID) to DB + //Copy source annotation + FieldDataDBOperationResults sourceUserExtDataInfo = + fieldDataDBOperation(con, keyFactory, user, + FieldDataDBOperationSpec.createGetExtDataIDsSpec( + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner())); + ExternalDataIdentifier[] sourceUserExtDataIDArr = sourceUserExtDataInfo.extDataIDArr; + Hashtable oldNameNewIDHash = + new Hashtable(); + Hashtable oldNameOldExtDataIDKey = + new Hashtable(); + String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); + for (int i = 0; i < newFieldFuncNamesArr.length; i += 1) { + //find orig annotation + String origAnnotation = + "Copy Field Data name used Field Data function\r\n" + + "Source type: " + fieldDataDBOperationSpec.sourceOwner.getVType().getTypeName() + "\r\n" + + "Source owner: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner().getName() + "\r\n" + + "Source name: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getName() + "\r\n" + + "Original Field Data name: " + newNameOrigNameHash.get(newFieldFuncNamesArr[i]) + "\r\n" + + "New Field Data name: " + newFieldFuncNamesArr[i] + "\r\n" + + "Source Annotation: " + newFieldFuncNamesArr[i] + "\r\n"; + for (int j = 0; j < sourceUserExtDataInfo.extDataAnnotArr.length; j += 1) { + String originalName = newNameOrigNameHash.get(newFieldFuncNamesArr[i]); + if (sourceUserExtDataIDArr[j].getName().equals(originalName)) { + oldNameOldExtDataIDKey.put(originalName, sourceUserExtDataInfo.extDataIDArr[j].getKey()); + origAnnotation += sourceUserExtDataInfo.extDataAnnotArr[j]; + break; + } + } + // + FieldDataDBOperationResults fieldDataDBOperationResults = + fieldDataDBOperation(con, keyFactory, user, + FieldDataDBOperationSpec.createSaveNewExtDataIDSpec( + user, newFieldFuncNamesArr[i], origAnnotation)); // errorCleanupExtDataIDV.add(fieldDataDBOperationResults.extDataID); - String origFieldFuncName = - newNameOrigNameHash.get(fieldDataDBOperationResults.extDataID.getName()); - if(origFieldFuncName == null){ - throw new DataAccessException("couldn't find original FieldFuncName using new ExternalDataId"); - } - oldNameNewIDHash.put(origFieldFuncName,fieldDataDBOperationResults.extDataID); - } - - FieldDataDBOperationResults fieldDataDBOperationResults = - new FieldDataDBOperationResults(); - fieldDataDBOperationResults.oldNameNewIDHash = oldNameNewIDHash; - fieldDataDBOperationResults.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKey; - return fieldDataDBOperationResults; - }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS){ - String sql; - ResultSet rset; - if(fieldDataDBOperationSpec.bIncludeSimRefs){ - sql = "SELECT "+ - ExternalDataTable.table.id.getQualifiedColName()+","+ - ExternalDataTable.table.externalDataName.getQualifiedColName()+","+ - ExternalDataTable.table.ownerRef.getQualifiedColName()+","+ - UserTable.table.userid.getQualifiedColName()+ ","+ - SimulationTable.table.id.getQualifiedColName() + - " FROM " + - ExternalDataTable.table.getTableName() + ","+ - MathDescTable.table.getTableName() + ","+ - SimulationTable.table.getTableName() + ","+ - MathDescExternalDataLinkTable.table.getTableName() + ","+ - UserTable.table.getTableName()+ - " WHERE " + - UserTable.table.id.getQualifiedColName() + " = " + - fieldDataDBOperationSpec.owner.getID() + - " AND "+ - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName() + - " AND "+ - ExternalDataTable.table.id.getQualifiedColName() + " = " + - MathDescExternalDataLinkTable.table.extDataRef.getQualifiedColName() + - " AND "+ - MathDescTable.table.id.getQualifiedColName() + " = " + - MathDescExternalDataLinkTable.table.mathDescRef.getQualifiedColName() + - " AND "+ - MathDescTable.table.id.getQualifiedColName() + " = " + - SimulationTable.table.mathRef.getQualifiedColName(); - }else{ - sql = "SELECT "+ - ExternalDataTable.table.getTableName()+".*"+","+ - UserTable.table.userid.getQualifiedColName()+ - " FROM " + - ExternalDataTable.table.getTableName() + ","+ - UserTable.table.getTableName()+ - " WHERE " + - ExternalDataTable.table.ownerRef + "=" +fieldDataDBOperationSpec.owner.getID() + - " AND "+ - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName(); - } - - Statement stmt = con.createStatement(); - Vector extDataIDV = new Vector(); - Vector extDataAnnotV = new Vector(); - HashMap> extDataIDSimRefsH = null; - try { - rset = stmt.executeQuery(sql); - while (rset.next()) { - ExternalDataIdentifier extDataID = - ExternalDataTable.table.getExternalDataIdentifier(rset); - if( !fieldDataDBOperationSpec.bIncludeSimRefs && - !extDataIDV.contains(extDataID)){ - extDataIDV.add(extDataID); - extDataAnnotV.add(ExternalDataTable.table.getExternalDataAnnot(rset)); - } - if(fieldDataDBOperationSpec.bIncludeSimRefs){ - if(extDataIDSimRefsH == null){ - extDataIDSimRefsH = - new HashMap>(); - } - Vector simRefV = - extDataIDSimRefsH.get(extDataID); - if(simRefV == null){ - simRefV = new Vector(); - extDataIDSimRefsH.put(extDataID, simRefV); - } - simRefV.add( - new KeyValue( - rset.getBigDecimal(SimulationTable.table.id.getUnqualifiedColName()))); - } - } - } finally { - stmt.close(); - } - FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); - fieldDataDBOperationResults.extDataIDArr = extDataIDV.toArray(new ExternalDataIdentifier[extDataIDV.size()]); - fieldDataDBOperationResults.extDataAnnotArr = extDataAnnotV.toArray(new String[extDataAnnotV.size()]); - fieldDataDBOperationResults.extdataIDAndSimRefH = extDataIDSimRefsH; - return fieldDataDBOperationResults; - - }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID){ - - if(!fieldDataDBOperationSpec.newExtDataIDName.equals( - TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))){ - throw new DataAccessException("Error inserting Field Data name "+ - fieldDataDBOperationSpec.newExtDataIDName+"\n"+ - "Field Data names can contain only letters,digits and underscores"); - } - - KeyValue newKey = keyFactory.getNewKey(con); - String sql = - "INSERT INTO "+ExternalDataTable.table.getTableName()+" "+ - ExternalDataTable.table.getSQLColumnList()+ - " VALUES "+ - ExternalDataTable.table.getSQLValueList( - newKey,user, - fieldDataDBOperationSpec.newExtDataIDName, - fieldDataDBOperationSpec.annotation); - - DbDriver.updateCleanSQL(con,sql); - ExternalDataIdentifier[] fdiArr = - FieldDataDBOperationDriver.fieldDataDBOperation( - con, keyFactory, user,FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; - for (int i = 0; i < fdiArr.length; i++) { - if(fdiArr[i].getName().equals(fieldDataDBOperationSpec.newExtDataIDName)){ - FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); - fieldDataDBOperationResults.extDataID = fdiArr[i];; - return fieldDataDBOperationResults; - } - } - throw new DataAccessException( - "Unable to retrieve inserted ExternalDataIdentifier "+ - fieldDataDBOperationSpec.newExtDataIDName); - - - }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE){ - String sql = - "DELETE" + " FROM " + ExternalDataTable.table.getTableName() + - " WHERE " + - ExternalDataTable.table.ownerRef + " = " + user.getID() + - " AND " + - ExternalDataTable.table.id + " = " + fieldDataDBOperationSpec.specEDI.getKey().toString(); - - DbDriver.updateCleanSQL(con,sql); - - return new FieldDataDBOperationResults(); - } - - throw new DataAccessException("Unknown FieldDataDBOperation "+fieldDataDBOperationSpec.opType); - } - - public static synchronized HashMap> getAllExternalDataIdentifiers() throws DataAccessException{ - - String sql = - "SELECT "+ - ExternalDataTable.table.getTableName()+".*"+","+ - UserTable.table.userid.getQualifiedColName()+ - " FROM " + - ExternalDataTable.table.getTableName() + ","+ - UserTable.table.getTableName()+ - " WHERE " + - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName(); - Statement stmt = null; - HashMap> allUserExtDataIDH = - new HashMap>(); - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sql); - while (rset.next()) { - ExternalDataIdentifier extDataID = - ExternalDataTable.table.getExternalDataIdentifier(rset); - Vector userExtDataIDV = - allUserExtDataIDH.get(extDataID.getOwner()); - if(userExtDataIDV == null){ - userExtDataIDV = new Vector(); - allUserExtDataIDH.put(extDataID.getOwner(), userExtDataIDV); - } - userExtDataIDV.add(extDataID); - } - }catch(Exception e){ - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getAllExternalDataIdentifiers",e); - }finally { - if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} - } - return allUserExtDataIDH; - } - - public static synchronized HashMap getFunctionFileNamesAndSimKeys(User user) - throws DataAccessException{ - - String sql = - "SELECT "+ - SimulationJobTable.table.simRef.getQualifiedColName()+","+ - SimulationJobTable.table.jobIndex.getQualifiedColName()+ - " FROM " + - SimulationJobTable.table.getTableName()+","+ - SimulationTable.table.getTableName()+ - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + - " AND "+ - SimulationTable.table.id.getQualifiedColName()+ " = " +SimulationJobTable.table.simRef.getQualifiedColName()+ - " UNION " + - " SELECT " + - SimulationTable.table.id.getQualifiedColName()+","+ - "TO_NUMBER(NULL) "+//SimulationJobTable.table.jobIndex.getUnqualifiedColName()+ - " FROM " + - SimulationTable.table.getTableName()+ - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName()+ "=" +user.getID()+ - " AND " + - SimulationTable.table.id.getQualifiedColName()+ - " NOT IN (SELECT " +SimulationJobTable.table.simRef.getQualifiedColName()+ - " FROM " +SimulationJobTable.table.getTableName()+" )"+ - " UNION " + - " SELECT " + - ExternalDataTable.table.id.getQualifiedColName()+","+ - "TO_NUMBER(0) "+ - " FROM " + - ExternalDataTable.table.getTableName()+ - " WHERE " + - ExternalDataTable.table.ownerRef.getQualifiedColName()+ "=" +user.getID(); - - - Statement stmt = null; - HashMap functionNamesH = new HashMap(); - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sql); - while (rset.next()) { - KeyValue simKey = new KeyValue(rset.getBigDecimal(1)); - BigDecimal jobIndex = rset.getBigDecimal(2); - boolean isOldStyle = rset.wasNull(); - functionNamesH.put( - SimulationData.createCanonicalFunctionsFileName( - simKey, (isOldStyle?0:jobIndex.intValue()), isOldStyle), - simKey - ); - } - }catch(Exception e){ - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getFunctionFileNamesAndSimKeys",e); - }finally { - if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} - } - return functionNamesH; -} + String origFieldFuncName = + newNameOrigNameHash.get(fieldDataDBOperationResults.extDataID.getName()); + if (origFieldFuncName == null) { + throw new DataAccessException("couldn't find original FieldFuncName using new ExternalDataId"); + } + oldNameNewIDHash.put(origFieldFuncName, fieldDataDBOperationResults.extDataID); + } + + FieldDataDBOperationResults fieldDataDBOperationResults = + new FieldDataDBOperationResults(); + fieldDataDBOperationResults.oldNameNewIDHash = oldNameNewIDHash; + fieldDataDBOperationResults.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKey; + return fieldDataDBOperationResults; + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { + String sql; + ResultSet rset; + if (fieldDataDBOperationSpec.bIncludeSimRefs) { + sql = "SELECT " + + ExternalDataTable.table.id.getQualifiedColName() + "," + + ExternalDataTable.table.externalDataName.getQualifiedColName() + "," + + ExternalDataTable.table.ownerRef.getQualifiedColName() + "," + + UserTable.table.userid.getQualifiedColName() + "," + + SimulationTable.table.id.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + "," + + MathDescTable.table.getTableName() + "," + + SimulationTable.table.getTableName() + "," + + MathDescExternalDataLinkTable.table.getTableName() + "," + + UserTable.table.getTableName() + + " WHERE " + + UserTable.table.id.getQualifiedColName() + " = " + + fieldDataDBOperationSpec.owner.getID() + + " AND " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName() + + " AND " + + ExternalDataTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.extDataRef.getQualifiedColName() + + " AND " + + MathDescTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.mathDescRef.getQualifiedColName() + + " AND " + + MathDescTable.table.id.getQualifiedColName() + " = " + + SimulationTable.table.mathRef.getQualifiedColName(); + } else { + sql = "SELECT " + + ExternalDataTable.table.getTableName() + ".*" + "," + + UserTable.table.userid.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + "," + + UserTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef + "=" + fieldDataDBOperationSpec.owner.getID() + + " AND " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName(); + } + + Statement stmt = con.createStatement(); + Vector extDataIDV = new Vector(); + Vector extDataAnnotV = new Vector(); + HashMap> extDataIDSimRefsH = null; + try { + rset = stmt.executeQuery(sql); + while (rset.next()) { + ExternalDataIdentifier extDataID = + ExternalDataTable.table.getExternalDataIdentifier(rset); + if (!fieldDataDBOperationSpec.bIncludeSimRefs && + !extDataIDV.contains(extDataID)) { + extDataIDV.add(extDataID); + extDataAnnotV.add(ExternalDataTable.table.getExternalDataAnnot(rset)); + } + if (fieldDataDBOperationSpec.bIncludeSimRefs) { + if (extDataIDSimRefsH == null) { + extDataIDSimRefsH = + new HashMap>(); + } + Vector simRefV = + extDataIDSimRefsH.get(extDataID); + if (simRefV == null) { + simRefV = new Vector(); + extDataIDSimRefsH.put(extDataID, simRefV); + } + simRefV.add( + new KeyValue( + rset.getBigDecimal(SimulationTable.table.id.getUnqualifiedColName()))); + } + } + } finally { + stmt.close(); + } + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataIDArr = extDataIDV.toArray(new ExternalDataIdentifier[extDataIDV.size()]); + fieldDataDBOperationResults.extDataAnnotArr = extDataAnnotV.toArray(new String[extDataAnnotV.size()]); + fieldDataDBOperationResults.extdataIDAndSimRefH = extDataIDSimRefsH; + return fieldDataDBOperationResults; + + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID) { + + if (!fieldDataDBOperationSpec.newExtDataIDName.equals( + TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))) { + throw new DataAccessException("Error inserting Field Data name " + + fieldDataDBOperationSpec.newExtDataIDName + "\n" + + "Field Data names can contain only letters,digits and underscores"); + } + + KeyValue newKey = keyFactory.getNewKey(con); + String sql = + "INSERT INTO " + ExternalDataTable.table.getTableName() + " " + + ExternalDataTable.table.getSQLColumnList() + + " VALUES " + + ExternalDataTable.table.getSQLValueList( + newKey, user, + fieldDataDBOperationSpec.newExtDataIDName, + fieldDataDBOperationSpec.annotation); - public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo getModelDescriptionForSimulation(User user,KeyValue simulationKey) - throws DataAccessException{ - - String sqlMathModel = - "SELECT "+ - MathModelTable.table.name.getQualifiedColName()+","+ - SimulationTable.table.name.getQualifiedColName() +","+ - "TO_CHAR("+MathModelTable.table.versionDate.getQualifiedColName()+","+DATE_FORMAT_STRING+")"+","+ - MathModelTable.table.id.getQualifiedColName()+ - " FROM " + - SimulationTable.table.getTableName()+","+ - MathModelSimulationLinkTable.table.getTableName()+","+ - MathModelTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + - " AND ("+ - SimulationTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString()+ - " AND "+ - SimulationTable.table.id.getQualifiedColName()+ " = " + - MathModelSimulationLinkTable.table.simRef.getQualifiedColName()+ - " AND "+ - MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName()+" = "+ - MathModelTable.table.id.getQualifiedColName()+ - ") OR ("+ - SimulationTable.table.versionParentSimRef.getQualifiedColName()+" IS NOT NULL"+ - " AND "+ - SimulationTable.table.versionParentSimRef.getQualifiedColName()+" = "+simulationKey.toString()+ - " AND "+ - SimulationTable.table.id.getQualifiedColName()+ " = " + - MathModelSimulationLinkTable.table.simRef.getQualifiedColName()+ - " AND "+ - MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName()+" = "+ - MathModelTable.table.id.getQualifiedColName()+ - ")"; - - String sqlBioModel = - "SELECT "+ - BioModelTable.table.name.getQualifiedColName()+","+ - SimContextTable.table.name.getQualifiedColName()+","+ - SimulationTable.table.name.getQualifiedColName() +","+ - "TO_CHAR("+BioModelTable.table.versionDate.getQualifiedColName()+","+DATE_FORMAT_STRING+")"+","+ - BioModelTable.table.id.getQualifiedColName()+ - " FROM " + - SimulationTable.table.getTableName()+","+ - BioModelSimulationLinkTable.table.getTableName()+","+ - SimContextTable.table.getTableName()+","+ - BioModelSimContextLinkTable.table.getTableName()+","+ - BioModelTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + - " AND ("+ - SimulationTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString()+ - " AND "+ - SimulationTable.table.id.getQualifiedColName()+ " = " + - BioModelSimulationLinkTable.table.simRef.getQualifiedColName()+ - " AND "+ - BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ - BioModelTable.table.id.getQualifiedColName()+ - " AND "+ - BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ - BioModelTable.table.id.getQualifiedColName() + - " AND "+ - SimContextTable.table.id.getQualifiedColName()+ " = " + - BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName()+ - " AND "+ - SimContextTable.table.mathRef.getQualifiedColName()+" = "+ - SimulationTable.table.mathRef.getQualifiedColName()+ - ") OR ("+ - SimulationTable.table.versionParentSimRef.getQualifiedColName()+" IS NOT NULL"+ - " AND "+ - SimulationTable.table.versionParentSimRef.getQualifiedColName()+" = "+simulationKey.toString()+ - " AND "+ - SimulationTable.table.id.getQualifiedColName()+ " = " + - BioModelSimulationLinkTable.table.simRef.getQualifiedColName()+ - " AND "+ - BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ - BioModelTable.table.id.getQualifiedColName()+ - " AND "+ - BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ - BioModelTable.table.id.getQualifiedColName() + - " AND "+ - SimContextTable.table.id.getQualifiedColName()+ " = " + - BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName()+ - " AND "+ - SimContextTable.table.mathRef.getQualifiedColName()+" = "+ - SimulationTable.table.mathRef.getQualifiedColName()+ - ")"; + DbDriver.updateCleanSQL(con, sql); + ExternalDataIdentifier[] fdiArr = + FieldDataDBOperationDriver.fieldDataDBOperation( + con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; + for (int i = 0; i < fdiArr.length; i++) { + if (fdiArr[i].getName().equals(fieldDataDBOperationSpec.newExtDataIDName)) { + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataID = fdiArr[i]; + ; + return fieldDataDBOperationResults; + } + } + throw new DataAccessException( + "Unable to retrieve inserted ExternalDataIdentifier " + + fieldDataDBOperationSpec.newExtDataIDName); + + + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE) { + String sql = + "DELETE" + " FROM " + ExternalDataTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef + " = " + user.getID() + + " AND " + + ExternalDataTable.table.id + " = " + fieldDataDBOperationSpec.specEDI.getKey().toString(); + + DbDriver.updateCleanSQL(con, sql); + + return new FieldDataDBOperationResults(); + } + + throw new DataAccessException("Unknown FieldDataDBOperation " + fieldDataDBOperationSpec.opType); + } + + public static synchronized HashMap> getAllExternalDataIdentifiers() throws DataAccessException { + + String sql = + "SELECT " + + ExternalDataTable.table.getTableName() + ".*" + "," + + UserTable.table.userid.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + "," + + UserTable.table.getTableName() + + " WHERE " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName(); + Statement stmt = null; + HashMap> allUserExtDataIDH = + new HashMap>(); + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sql); + while (rset.next()) { + ExternalDataIdentifier extDataID = + ExternalDataTable.table.getExternalDataIdentifier(rset); + Vector userExtDataIDV = + allUserExtDataIDH.get(extDataID.getOwner()); + if (userExtDataIDV == null) { + userExtDataIDV = new Vector(); + allUserExtDataIDH.put(extDataID.getOwner(), userExtDataIDV); + } + userExtDataIDV.add(extDataID); + } + } catch (Exception e) { + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getAllExternalDataIdentifiers", e); + } finally { + if (stmt != null) { + try { + stmt.close(); + } catch (Exception e) { + lg.error(e.getMessage(), e); + } + } + } + return allUserExtDataIDH; + } + + public static synchronized HashMap getFunctionFileNamesAndSimKeys(User user) + throws DataAccessException { + + String sql = + "SELECT " + + SimulationJobTable.table.simRef.getQualifiedColName() + "," + + SimulationJobTable.table.jobIndex.getQualifiedColName() + + " FROM " + + SimulationJobTable.table.getTableName() + "," + + SimulationTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + " = " + SimulationJobTable.table.simRef.getQualifiedColName() + + " UNION " + + " SELECT " + + SimulationTable.table.id.getQualifiedColName() + "," + + "TO_NUMBER(NULL) " +//SimulationJobTable.table.jobIndex.getUnqualifiedColName()+ + " FROM " + + SimulationTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() + "=" + user.getID() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + + " NOT IN (SELECT " + SimulationJobTable.table.simRef.getQualifiedColName() + + " FROM " + SimulationJobTable.table.getTableName() + " )" + + " UNION " + + " SELECT " + + ExternalDataTable.table.id.getQualifiedColName() + "," + + "TO_NUMBER(0) " + + " FROM " + + ExternalDataTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef.getQualifiedColName() + "=" + user.getID(); + + + Statement stmt = null; + HashMap functionNamesH = new HashMap(); + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sql); + while (rset.next()) { + KeyValue simKey = new KeyValue(rset.getBigDecimal(1)); + BigDecimal jobIndex = rset.getBigDecimal(2); + boolean isOldStyle = rset.wasNull(); + functionNamesH.put( + SimulationData.createCanonicalFunctionsFileName( + simKey, (isOldStyle ? 0 : jobIndex.intValue()), isOldStyle), + simKey + ); + } + } catch (Exception e) { + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getFunctionFileNamesAndSimKeys", e); + } finally { + if (stmt != null) { + try { + stmt.close(); + } catch (Exception e) { + lg.error(e.getMessage(), e); + } + } + } + return functionNamesH; + } + + public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo getModelDescriptionForSimulation(User user, KeyValue simulationKey) + throws DataAccessException { + + String sqlMathModel = + "SELECT " + + MathModelTable.table.name.getQualifiedColName() + "," + + SimulationTable.table.name.getQualifiedColName() + "," + + "TO_CHAR(" + MathModelTable.table.versionDate.getQualifiedColName() + "," + DATE_FORMAT_STRING + ")" + "," + + MathModelTable.table.id.getQualifiedColName() + + " FROM " + + SimulationTable.table.getTableName() + "," + + MathModelSimulationLinkTable.table.getTableName() + "," + + MathModelTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + + " AND (" + + SimulationTable.table.id.getQualifiedColName() + " = " + simulationKey.toString() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + " = " + + MathModelSimulationLinkTable.table.simRef.getQualifiedColName() + + " AND " + + MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName() + " = " + + MathModelTable.table.id.getQualifiedColName() + + ") OR (" + + SimulationTable.table.versionParentSimRef.getQualifiedColName() + " IS NOT NULL" + + " AND " + + SimulationTable.table.versionParentSimRef.getQualifiedColName() + " = " + simulationKey.toString() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + " = " + + MathModelSimulationLinkTable.table.simRef.getQualifiedColName() + + " AND " + + MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName() + " = " + + MathModelTable.table.id.getQualifiedColName() + + ")"; + + String sqlBioModel = + "SELECT " + + BioModelTable.table.name.getQualifiedColName() + "," + + SimContextTable.table.name.getQualifiedColName() + "," + + SimulationTable.table.name.getQualifiedColName() + "," + + "TO_CHAR(" + BioModelTable.table.versionDate.getQualifiedColName() + "," + DATE_FORMAT_STRING + ")" + "," + + BioModelTable.table.id.getQualifiedColName() + + " FROM " + + SimulationTable.table.getTableName() + "," + + BioModelSimulationLinkTable.table.getTableName() + "," + + SimContextTable.table.getTableName() + "," + + BioModelSimContextLinkTable.table.getTableName() + "," + + BioModelTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + + " AND (" + + SimulationTable.table.id.getQualifiedColName() + " = " + simulationKey.toString() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + " = " + + BioModelSimulationLinkTable.table.simRef.getQualifiedColName() + + " AND " + + BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName() + " = " + + BioModelTable.table.id.getQualifiedColName() + + " AND " + + BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName() + " = " + + BioModelTable.table.id.getQualifiedColName() + + " AND " + + SimContextTable.table.id.getQualifiedColName() + " = " + + BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName() + + " AND " + + SimContextTable.table.mathRef.getQualifiedColName() + " = " + + SimulationTable.table.mathRef.getQualifiedColName() + + ") OR (" + + SimulationTable.table.versionParentSimRef.getQualifiedColName() + " IS NOT NULL" + + " AND " + + SimulationTable.table.versionParentSimRef.getQualifiedColName() + " = " + simulationKey.toString() + + " AND " + + SimulationTable.table.id.getQualifiedColName() + " = " + + BioModelSimulationLinkTable.table.simRef.getQualifiedColName() + + " AND " + + BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName() + " = " + + BioModelTable.table.id.getQualifiedColName() + + " AND " + + BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName() + " = " + + BioModelTable.table.id.getQualifiedColName() + + " AND " + + SimContextTable.table.id.getQualifiedColName() + " = " + + BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName() + + " AND " + + SimContextTable.table.mathRef.getQualifiedColName() + " = " + + SimulationTable.table.mathRef.getQualifiedColName() + + ")"; // OR // (vc_simulation.parentsimref is not null @@ -512,55 +533,61 @@ public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo // AND vc_simcontext.mathref = vc_simulation.mathref // ) - String sqlFieldData = - "SELECT "+ - ExternalDataTable.table.externalDataName.getQualifiedColName()+ - " FROM " + - ExternalDataTable.table.getTableName()+ - " WHERE " + - ExternalDataTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + - " AND "+ - ExternalDataTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString(); - - Statement stmt = null; - FieldDataFileOperationResults.FieldDataReferenceInfo fieldDataRefInfo = null; - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sqlMathModel); - if(rset.next()){ - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = VersionableType.MathModelMetaData.getTypeName(); - fieldDataRefInfo.referenceSourceName = rset.getString(1); - fieldDataRefInfo.simulationName = rset.getString(2); - fieldDataRefInfo.refSourceVersionDate = rset.getString(3); - fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(4)); - }else{ - rset.close(); - rset = stmt.executeQuery(sqlBioModel); - if(rset.next()){ - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = VersionableType.BioModelMetaData.getTypeName(); - fieldDataRefInfo.referenceSourceName = rset.getString(1); - fieldDataRefInfo.applicationName = rset.getString(2); - fieldDataRefInfo.simulationName = rset.getString(3); - fieldDataRefInfo.refSourceVersionDate = rset.getString(4); - fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(5)); - }else{ - rset.close(); - rset = stmt.executeQuery(sqlFieldData); - if(rset.next()){ - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME; - fieldDataRefInfo.referenceSourceName = rset.getString(1); - } - } - } - }catch(Exception e){ - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getModelDescriptionForSimulation",e); - }finally { - if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} - } - return fieldDataRefInfo; -} + String sqlFieldData = + "SELECT " + + ExternalDataTable.table.externalDataName.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + + " AND " + + ExternalDataTable.table.id.getQualifiedColName() + " = " + simulationKey.toString(); + + Statement stmt = null; + FieldDataFileOperationResults.FieldDataReferenceInfo fieldDataRefInfo = null; + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sqlMathModel); + if (rset.next()) { + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = VersionableType.MathModelMetaData.getTypeName(); + fieldDataRefInfo.referenceSourceName = rset.getString(1); + fieldDataRefInfo.simulationName = rset.getString(2); + fieldDataRefInfo.refSourceVersionDate = rset.getString(3); + fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(4)); + } else { + rset.close(); + rset = stmt.executeQuery(sqlBioModel); + if (rset.next()) { + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = VersionableType.BioModelMetaData.getTypeName(); + fieldDataRefInfo.referenceSourceName = rset.getString(1); + fieldDataRefInfo.applicationName = rset.getString(2); + fieldDataRefInfo.simulationName = rset.getString(3); + fieldDataRefInfo.refSourceVersionDate = rset.getString(4); + fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(5)); + } else { + rset.close(); + rset = stmt.executeQuery(sqlFieldData); + if (rset.next()) { + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME; + fieldDataRefInfo.referenceSourceName = rset.getString(1); + } + } + } + } catch (Exception e) { + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getModelDescriptionForSimulation", e); + } finally { + if (stmt != null) { + try { + stmt.close(); + } catch (Exception e) { + lg.error(e.getMessage(), e); + } + } + } + return fieldDataRefInfo; + } } From ff674ee42f7a187a161e1b17544b4d57d2b3fdae Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 25 Nov 2024 10:31:22 -0500 Subject: [PATCH 02/37] Refactor Field Data DB Functions --- .../field/db/FieldDataDBOperationDriver.java | 392 +++++++++--------- 1 file changed, 204 insertions(+), 188 deletions(-) diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index 7325e4054b..1e5a3532c4 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -111,215 +111,231 @@ private static synchronized Connection getConnection() throws Exception { } - public static FieldDataDBOperationResults fieldDataDBOperation(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { - - if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_COPY_NO_CONFLICT) { - //get all current ExtDataIDs - ExternalDataIdentifier[] existingExtDataIDArr = - FieldDataDBOperationDriver.fieldDataDBOperation( - con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; - //Rename FieldFunc names if necessary - Hashtable newNameOrigNameHash = new Hashtable(); - for (int i = 0; i < fieldDataDBOperationSpec.sourceNames.length; i += 1) { - String newFieldFuncName = fieldDataDBOperationSpec.sourceNames[i]; - while (true) { - boolean bNameConflictExists = false; - for (int j = 0; j < existingExtDataIDArr.length; j += 1) { - if (existingExtDataIDArr[j].getName().equals(newFieldFuncName)) { - bNameConflictExists = true; - break; - } - } - bNameConflictExists = - bNameConflictExists || newNameOrigNameHash.containsKey(newFieldFuncName); - if (!bNameConflictExists) { - newNameOrigNameHash.put(newFieldFuncName, fieldDataDBOperationSpec.sourceNames[i]); + private static FieldDataDBOperationResults copyNoConflict(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { + //get all current ExtDataIDs + ExternalDataIdentifier[] existingExtDataIDArr = + FieldDataDBOperationDriver.fieldDataDBOperation( + con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; + //Rename FieldFunc names if necessary + Hashtable newNameOrigNameHash = new Hashtable(); + for (int i = 0; i < fieldDataDBOperationSpec.sourceNames.length; i += 1) { + String newFieldFuncName = fieldDataDBOperationSpec.sourceNames[i]; + while (true) { + boolean bNameConflictExists = false; + for (int j = 0; j < existingExtDataIDArr.length; j += 1) { + if (existingExtDataIDArr[j].getName().equals(newFieldFuncName)) { + bNameConflictExists = true; break; } - newFieldFuncName = TokenMangler.getNextEnumeratedToken(newFieldFuncName); } - } - //Add new ExternalDataIdentifier (FieldData ID) to DB - //Copy source annotation - FieldDataDBOperationResults sourceUserExtDataInfo = - fieldDataDBOperation(con, keyFactory, user, - FieldDataDBOperationSpec.createGetExtDataIDsSpec( - fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner())); - ExternalDataIdentifier[] sourceUserExtDataIDArr = sourceUserExtDataInfo.extDataIDArr; - Hashtable oldNameNewIDHash = - new Hashtable(); - Hashtable oldNameOldExtDataIDKey = - new Hashtable(); - String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); - for (int i = 0; i < newFieldFuncNamesArr.length; i += 1) { - //find orig annotation - String origAnnotation = - "Copy Field Data name used Field Data function\r\n" + - "Source type: " + fieldDataDBOperationSpec.sourceOwner.getVType().getTypeName() + "\r\n" + - "Source owner: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner().getName() + "\r\n" + - "Source name: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getName() + "\r\n" + - "Original Field Data name: " + newNameOrigNameHash.get(newFieldFuncNamesArr[i]) + "\r\n" + - "New Field Data name: " + newFieldFuncNamesArr[i] + "\r\n" + - "Source Annotation: " + newFieldFuncNamesArr[i] + "\r\n"; - for (int j = 0; j < sourceUserExtDataInfo.extDataAnnotArr.length; j += 1) { - String originalName = newNameOrigNameHash.get(newFieldFuncNamesArr[i]); - if (sourceUserExtDataIDArr[j].getName().equals(originalName)) { - oldNameOldExtDataIDKey.put(originalName, sourceUserExtDataInfo.extDataIDArr[j].getKey()); - origAnnotation += sourceUserExtDataInfo.extDataAnnotArr[j]; - break; - } + bNameConflictExists = + bNameConflictExists || newNameOrigNameHash.containsKey(newFieldFuncName); + if (!bNameConflictExists) { + newNameOrigNameHash.put(newFieldFuncName, fieldDataDBOperationSpec.sourceNames[i]); + break; } - // - FieldDataDBOperationResults fieldDataDBOperationResults = - fieldDataDBOperation(con, keyFactory, user, - FieldDataDBOperationSpec.createSaveNewExtDataIDSpec( - user, newFieldFuncNamesArr[i], origAnnotation)); -// errorCleanupExtDataIDV.add(fieldDataDBOperationResults.extDataID); - String origFieldFuncName = - newNameOrigNameHash.get(fieldDataDBOperationResults.extDataID.getName()); - if (origFieldFuncName == null) { - throw new DataAccessException("couldn't find original FieldFuncName using new ExternalDataId"); + newFieldFuncName = TokenMangler.getNextEnumeratedToken(newFieldFuncName); + } + } + //Add new ExternalDataIdentifier (FieldData ID) to DB + //Copy source annotation + FieldDataDBOperationResults sourceUserExtDataInfo = + fieldDataDBOperation(con, keyFactory, user, + FieldDataDBOperationSpec.createGetExtDataIDsSpec( + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner())); + ExternalDataIdentifier[] sourceUserExtDataIDArr = sourceUserExtDataInfo.extDataIDArr; + Hashtable oldNameNewIDHash = + new Hashtable(); + Hashtable oldNameOldExtDataIDKey = + new Hashtable(); + String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); + for (int i = 0; i < newFieldFuncNamesArr.length; i += 1) { + //find orig annotation + String origAnnotation = + "Copy Field Data name used Field Data function\r\n" + + "Source type: " + fieldDataDBOperationSpec.sourceOwner.getVType().getTypeName() + "\r\n" + + "Source owner: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner().getName() + "\r\n" + + "Source name: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getName() + "\r\n" + + "Original Field Data name: " + newNameOrigNameHash.get(newFieldFuncNamesArr[i]) + "\r\n" + + "New Field Data name: " + newFieldFuncNamesArr[i] + "\r\n" + + "Source Annotation: " + newFieldFuncNamesArr[i] + "\r\n"; + for (int j = 0; j < sourceUserExtDataInfo.extDataAnnotArr.length; j += 1) { + String originalName = newNameOrigNameHash.get(newFieldFuncNamesArr[i]); + if (sourceUserExtDataIDArr[j].getName().equals(originalName)) { + oldNameOldExtDataIDKey.put(originalName, sourceUserExtDataInfo.extDataIDArr[j].getKey()); + origAnnotation += sourceUserExtDataInfo.extDataAnnotArr[j]; + break; } - oldNameNewIDHash.put(origFieldFuncName, fieldDataDBOperationResults.extDataID); } - + // FieldDataDBOperationResults fieldDataDBOperationResults = - new FieldDataDBOperationResults(); - fieldDataDBOperationResults.oldNameNewIDHash = oldNameNewIDHash; - fieldDataDBOperationResults.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKey; - return fieldDataDBOperationResults; - } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { - String sql; - ResultSet rset; - if (fieldDataDBOperationSpec.bIncludeSimRefs) { - sql = "SELECT " + - ExternalDataTable.table.id.getQualifiedColName() + "," + - ExternalDataTable.table.externalDataName.getQualifiedColName() + "," + - ExternalDataTable.table.ownerRef.getQualifiedColName() + "," + - UserTable.table.userid.getQualifiedColName() + "," + - SimulationTable.table.id.getQualifiedColName() + - " FROM " + - ExternalDataTable.table.getTableName() + "," + - MathDescTable.table.getTableName() + "," + - SimulationTable.table.getTableName() + "," + - MathDescExternalDataLinkTable.table.getTableName() + "," + - UserTable.table.getTableName() + - " WHERE " + - UserTable.table.id.getQualifiedColName() + " = " + - fieldDataDBOperationSpec.owner.getID() + - " AND " + - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName() + - " AND " + - ExternalDataTable.table.id.getQualifiedColName() + " = " + - MathDescExternalDataLinkTable.table.extDataRef.getQualifiedColName() + - " AND " + - MathDescTable.table.id.getQualifiedColName() + " = " + - MathDescExternalDataLinkTable.table.mathDescRef.getQualifiedColName() + - " AND " + - MathDescTable.table.id.getQualifiedColName() + " = " + - SimulationTable.table.mathRef.getQualifiedColName(); - } else { - sql = "SELECT " + - ExternalDataTable.table.getTableName() + ".*" + "," + - UserTable.table.userid.getQualifiedColName() + - " FROM " + - ExternalDataTable.table.getTableName() + "," + - UserTable.table.getTableName() + - " WHERE " + - ExternalDataTable.table.ownerRef + "=" + fieldDataDBOperationSpec.owner.getID() + - " AND " + - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName(); + fieldDataDBOperation(con, keyFactory, user, + FieldDataDBOperationSpec.createSaveNewExtDataIDSpec( + user, newFieldFuncNamesArr[i], origAnnotation)); +// errorCleanupExtDataIDV.add(fieldDataDBOperationResults.extDataID); + String origFieldFuncName = + newNameOrigNameHash.get(fieldDataDBOperationResults.extDataID.getName()); + if (origFieldFuncName == null) { + throw new DataAccessException("couldn't find original FieldFuncName using new ExternalDataId"); } + oldNameNewIDHash.put(origFieldFuncName, fieldDataDBOperationResults.extDataID); + } - Statement stmt = con.createStatement(); - Vector extDataIDV = new Vector(); - Vector extDataAnnotV = new Vector(); - HashMap> extDataIDSimRefsH = null; - try { - rset = stmt.executeQuery(sql); - while (rset.next()) { - ExternalDataIdentifier extDataID = - ExternalDataTable.table.getExternalDataIdentifier(rset); - if (!fieldDataDBOperationSpec.bIncludeSimRefs && - !extDataIDV.contains(extDataID)) { - extDataIDV.add(extDataID); - extDataAnnotV.add(ExternalDataTable.table.getExternalDataAnnot(rset)); + FieldDataDBOperationResults fieldDataDBOperationResults = + new FieldDataDBOperationResults(); + fieldDataDBOperationResults.oldNameNewIDHash = oldNameNewIDHash; + fieldDataDBOperationResults.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKey; + return fieldDataDBOperationResults; + } + + private static FieldDataDBOperationResults getExtraDataIDs(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + String sql; + ResultSet rset; + if (fieldDataDBOperationSpec.bIncludeSimRefs) { + sql = "SELECT " + + ExternalDataTable.table.id.getQualifiedColName() + "," + + ExternalDataTable.table.externalDataName.getQualifiedColName() + "," + + ExternalDataTable.table.ownerRef.getQualifiedColName() + "," + + UserTable.table.userid.getQualifiedColName() + "," + + SimulationTable.table.id.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + "," + + MathDescTable.table.getTableName() + "," + + SimulationTable.table.getTableName() + "," + + MathDescExternalDataLinkTable.table.getTableName() + "," + + UserTable.table.getTableName() + + " WHERE " + + UserTable.table.id.getQualifiedColName() + " = " + + fieldDataDBOperationSpec.owner.getID() + + " AND " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName() + + " AND " + + ExternalDataTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.extDataRef.getQualifiedColName() + + " AND " + + MathDescTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.mathDescRef.getQualifiedColName() + + " AND " + + MathDescTable.table.id.getQualifiedColName() + " = " + + SimulationTable.table.mathRef.getQualifiedColName(); + } else { + sql = "SELECT " + + ExternalDataTable.table.getTableName() + ".*" + "," + + UserTable.table.userid.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + "," + + UserTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef + "=" + fieldDataDBOperationSpec.owner.getID() + + " AND " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName(); + } + + Statement stmt = con.createStatement(); + Vector extDataIDV = new Vector(); + Vector extDataAnnotV = new Vector(); + HashMap> extDataIDSimRefsH = null; + try { + rset = stmt.executeQuery(sql); + while (rset.next()) { + ExternalDataIdentifier extDataID = + ExternalDataTable.table.getExternalDataIdentifier(rset); + if (!fieldDataDBOperationSpec.bIncludeSimRefs && + !extDataIDV.contains(extDataID)) { + extDataIDV.add(extDataID); + extDataAnnotV.add(ExternalDataTable.table.getExternalDataAnnot(rset)); + } + if (fieldDataDBOperationSpec.bIncludeSimRefs) { + if (extDataIDSimRefsH == null) { + extDataIDSimRefsH = + new HashMap>(); } - if (fieldDataDBOperationSpec.bIncludeSimRefs) { - if (extDataIDSimRefsH == null) { - extDataIDSimRefsH = - new HashMap>(); - } - Vector simRefV = - extDataIDSimRefsH.get(extDataID); - if (simRefV == null) { - simRefV = new Vector(); - extDataIDSimRefsH.put(extDataID, simRefV); - } - simRefV.add( - new KeyValue( - rset.getBigDecimal(SimulationTable.table.id.getUnqualifiedColName()))); + Vector simRefV = + extDataIDSimRefsH.get(extDataID); + if (simRefV == null) { + simRefV = new Vector(); + extDataIDSimRefsH.put(extDataID, simRefV); } + simRefV.add( + new KeyValue( + rset.getBigDecimal(SimulationTable.table.id.getUnqualifiedColName()))); } - } finally { - stmt.close(); } - FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); - fieldDataDBOperationResults.extDataIDArr = extDataIDV.toArray(new ExternalDataIdentifier[extDataIDV.size()]); - fieldDataDBOperationResults.extDataAnnotArr = extDataAnnotV.toArray(new String[extDataAnnotV.size()]); - fieldDataDBOperationResults.extdataIDAndSimRefH = extDataIDSimRefsH; - return fieldDataDBOperationResults; + } finally { + stmt.close(); + } + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataIDArr = extDataIDV.toArray(new ExternalDataIdentifier[extDataIDV.size()]); + fieldDataDBOperationResults.extDataAnnotArr = extDataAnnotV.toArray(new String[extDataAnnotV.size()]); + fieldDataDBOperationResults.extdataIDAndSimRefH = extDataIDSimRefsH; + return fieldDataDBOperationResults; + } - } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID) { + private static FieldDataDBOperationResults saveExtraDataID(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException, SQLException { + if (!fieldDataDBOperationSpec.newExtDataIDName.equals( + TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))) { + throw new DataAccessException("Error inserting Field Data name " + + fieldDataDBOperationSpec.newExtDataIDName + "\n" + + "Field Data names can contain only letters,digits and underscores"); + } - if (!fieldDataDBOperationSpec.newExtDataIDName.equals( - TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))) { - throw new DataAccessException("Error inserting Field Data name " + - fieldDataDBOperationSpec.newExtDataIDName + "\n" + - "Field Data names can contain only letters,digits and underscores"); + KeyValue newKey = keyFactory.getNewKey(con); + String sql = + "INSERT INTO " + ExternalDataTable.table.getTableName() + " " + + ExternalDataTable.table.getSQLColumnList() + + " VALUES " + + ExternalDataTable.table.getSQLValueList( + newKey, user, + fieldDataDBOperationSpec.newExtDataIDName, + fieldDataDBOperationSpec.annotation); + + DbDriver.updateCleanSQL(con, sql); + ExternalDataIdentifier[] fdiArr = + FieldDataDBOperationDriver.fieldDataDBOperation( + con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; + for (int i = 0; i < fdiArr.length; i++) { + if (fdiArr[i].getName().equals(fieldDataDBOperationSpec.newExtDataIDName)) { + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataID = fdiArr[i]; + ; + return fieldDataDBOperationResults; } + } + throw new DataAccessException( + "Unable to retrieve inserted ExternalDataIdentifier " + + fieldDataDBOperationSpec.newExtDataIDName); + } - KeyValue newKey = keyFactory.getNewKey(con); - String sql = - "INSERT INTO " + ExternalDataTable.table.getTableName() + " " + - ExternalDataTable.table.getSQLColumnList() + - " VALUES " + - ExternalDataTable.table.getSQLValueList( - newKey, user, - fieldDataDBOperationSpec.newExtDataIDName, - fieldDataDBOperationSpec.annotation); - - DbDriver.updateCleanSQL(con, sql); - ExternalDataIdentifier[] fdiArr = - FieldDataDBOperationDriver.fieldDataDBOperation( - con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; - for (int i = 0; i < fdiArr.length; i++) { - if (fdiArr[i].getName().equals(fieldDataDBOperationSpec.newExtDataIDName)) { - FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); - fieldDataDBOperationResults.extDataID = fdiArr[i]; - ; - return fieldDataDBOperationResults; - } - } - throw new DataAccessException( - "Unable to retrieve inserted ExternalDataIdentifier " + - fieldDataDBOperationSpec.newExtDataIDName); + private static FieldDataDBOperationResults deleteFieldData(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + String sql = + "DELETE" + " FROM " + ExternalDataTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef + " = " + user.getID() + + " AND " + + ExternalDataTable.table.id + " = " + fieldDataDBOperationSpec.specEDI.getKey().toString(); + DbDriver.updateCleanSQL(con, sql); - } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE) { - String sql = - "DELETE" + " FROM " + ExternalDataTable.table.getTableName() + - " WHERE " + - ExternalDataTable.table.ownerRef + " = " + user.getID() + - " AND " + - ExternalDataTable.table.id + " = " + fieldDataDBOperationSpec.specEDI.getKey().toString(); + return new FieldDataDBOperationResults(); + } - DbDriver.updateCleanSQL(con, sql); + public static FieldDataDBOperationResults fieldDataDBOperation(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { - return new FieldDataDBOperationResults(); + if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_COPY_NO_CONFLICT) { + return copyNoConflict(con, keyFactory, user, fieldDataDBOperationSpec); + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { + return getExtraDataIDs(con, keyFactory, user, fieldDataDBOperationSpec); + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID) { + return saveExtraDataID(con, keyFactory, user, fieldDataDBOperationSpec); + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE) { + return deleteFieldData(con, keyFactory, user, fieldDataDBOperationSpec); } throw new DataAccessException("Unknown FieldDataDBOperation " + fieldDataDBOperationSpec.opType); From 6a05dbe5ad9dd8006bdf2a094a00ca000fd1a2cd Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Tue, 26 Nov 2024 10:20:05 -0500 Subject: [PATCH 03/37] Implement DB Endpoints --- .../restq/handlers/FieldData/FieldDataDB.java | 59 +++++++++ .../handlers/FieldData/FieldDataResource.java | 112 ++++++++++++++++++ .../field/db/FieldDataDBOperationDriver.java | 12 +- 3 files changed, 177 insertions(+), 6 deletions(-) create mode 100644 vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java create mode 100644 vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java new file mode 100644 index 0000000000..4b81791d2f --- /dev/null +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -0,0 +1,59 @@ +package org.vcell.restq.handlers.FieldData; + +import cbit.vcell.field.FieldDataDBOperationResults; +import cbit.vcell.field.FieldDataDBOperationSpec; +import cbit.vcell.modeldb.DatabaseServerImpl; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; +import org.vcell.restq.db.AgroalConnectionFactory; +import org.vcell.util.DataAccessException; +import org.vcell.util.document.User; + +import java.sql.SQLException; + +@ApplicationScoped +public class FieldDataDB { + + private final DatabaseServerImpl databaseServer; + + @Inject + public FieldDataDB(AgroalConnectionFactory agroalConnectionFactory) throws DataAccessException { + databaseServer = new DatabaseServerImpl(agroalConnectionFactory, agroalConnectionFactory.getKeyFactory()); + } + + public FieldDataDBOperationResults copyNoConflict(User user, FieldDataDBOperationSpec spec) throws DataAccessException { + return databaseServer.fieldDataDBOperation(user, spec); + } + + public FieldDataDBOperationResults getAllFieldData(User user, FieldDataDBOperationSpec spec) throws SQLException, DataAccessException { + return databaseServer.fieldDataDBOperation(user, spec); + } + + public FieldDataDBOperationResults saveNewFieldData(User user, FieldDataDBOperationSpec spec) throws DataAccessException { + return databaseServer.fieldDataDBOperation(user, spec); + } + + public void deleteFieldData(User user, FieldDataDBOperationSpec spec) throws DataAccessException { + databaseServer.fieldDataDBOperation(user, spec); + } + +} + + + + + + + + + + + + + + + + + + + diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java new file mode 100644 index 0000000000..00b0cd7581 --- /dev/null +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -0,0 +1,112 @@ +package org.vcell.restq.handlers.FieldData; + +import cbit.vcell.field.FieldDataDBOperationResults; +import cbit.vcell.field.FieldDataDBOperationSpec; +import io.quarkus.security.identity.SecurityIdentity; +import jakarta.enterprise.context.RequestScoped; +import jakarta.inject.Inject; +import jakarta.ws.rs.*; +import jakarta.ws.rs.core.MediaType; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.eclipse.microprofile.openapi.annotations.Operation; +import org.vcell.restq.db.UserRestDB; +import org.vcell.util.DataAccessException; +import org.vcell.util.document.ExternalDataIdentifier; +import org.vcell.util.document.KeyValue; + +import java.sql.SQLException; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.Vector; + +@Path("/api/v1/fieldData") +@RequestScoped +public class FieldDataResource { + + private static final Logger lg = LogManager.getLogger(FieldDataResource.class); + + @Inject + SecurityIdentity securityIdentity; + + private final FieldDataDB fieldDataDB; + private final UserRestDB userRestDB; + + @Inject + public FieldDataResource(FieldDataDB fieldDataDB, UserRestDB userRestDB){ + this.fieldDataDB = fieldDataDB; + this.userRestDB = userRestDB; + } + + + @GET + @Operation(operationId = "getAllFieldData", summary = "Get all of the field data for that user.") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.APPLICATION_JSON) + public FieldDataExternalDataIDs getAllFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + FieldDataDBOperationResults results = null; + try { + results = fieldDataDB.getAllFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + } catch (SQLException e) { + throw new WebApplicationException("Can't retrieve field data.", 500); + } catch (DataAccessException e) { + throw new WebApplicationException(e.getMessage(), 500); + } + return new FieldDataResource.FieldDataExternalDataIDs(results.extDataIDArr, results.extDataAnnotArr, results.extdataIDAndSimRefH); + } + + @POST + @Path("/new") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.APPLICATION_JSON) + @Operation(operationId = "createNewFieldData", summary = "Create a new field data component.") + public ExternalDataIdentifier createNewFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + FieldDataDBOperationResults results = null; + try { + results = fieldDataDB.saveNewFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + } catch (DataAccessException e) { + throw new WebApplicationException(e.getMessage(), 500); + } + return results.extDataID; + } + + @POST + @Path("/copy") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.APPLICATION_JSON) + @Operation(operationId = "copyFieldData", summary = "Copy an existing field data entry.") + public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + FieldDataDBOperationResults results = null; + try { + results = fieldDataDB.copyNoConflict(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + } catch (DataAccessException e) { + throw new WebApplicationException(e.getMessage(), 500); + } + return new FieldDataNoCopyConflict(results.oldNameNewIDHash, results.oldNameOldExtDataIDKeyHash); + } + + @DELETE + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.APPLICATION_JSON) + @Operation(operationId = "deleteFieldData", summary = "Delete the selected field data.") + public void deleteFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + try{ + fieldDataDB.deleteFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + } catch (DataAccessException e) { + throw new WebApplicationException(e.getMessage(), 500); + } + } + + + public record FieldDataNoCopyConflict( + Hashtable oldNameNewIDHash, + Hashtable oldNameOldExtDataIDKeyHash + ) { } + + public record FieldDataExternalDataIDs( + ExternalDataIdentifier[] externalDataIdentifiers, + String[] externalDataAnnotations, + HashMap> externalDataIDSimRefs + ) { } + +} diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index 1e5a3532c4..2b20636792 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -189,8 +189,8 @@ private static FieldDataDBOperationResults copyNoConflict(Connection con, KeyFac return fieldDataDBOperationResults; } - private static FieldDataDBOperationResults getExtraDataIDs(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + private static FieldDataDBOperationResults getExternalDataIDs(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { String sql; ResultSet rset; if (fieldDataDBOperationSpec.bIncludeSimRefs) { @@ -275,8 +275,8 @@ private static FieldDataDBOperationResults getExtraDataIDs(Connection con, KeyFa return fieldDataDBOperationResults; } - private static FieldDataDBOperationResults saveExtraDataID(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException, SQLException { + private static FieldDataDBOperationResults saveExternalDataID(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException, SQLException { if (!fieldDataDBOperationSpec.newExtDataIDName.equals( TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))) { throw new DataAccessException("Error inserting Field Data name " + @@ -331,9 +331,9 @@ public static FieldDataDBOperationResults fieldDataDBOperation(Connection con, K if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_COPY_NO_CONFLICT) { return copyNoConflict(con, keyFactory, user, fieldDataDBOperationSpec); } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { - return getExtraDataIDs(con, keyFactory, user, fieldDataDBOperationSpec); + return getExternalDataIDs(con, keyFactory, user, fieldDataDBOperationSpec); } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID) { - return saveExtraDataID(con, keyFactory, user, fieldDataDBOperationSpec); + return saveExternalDataID(con, keyFactory, user, fieldDataDBOperationSpec); } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE) { return deleteFieldData(con, keyFactory, user, fieldDataDBOperationSpec); } From a1ab4bc28da8a05df7bc681c5041f8090b1d26ca Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 11 Dec 2024 08:21:12 -0500 Subject: [PATCH 04/37] DTO to Internal Class Conversion --- .../io/FieldDataFileOperationResults.java | 26 +++++++++++++++++++ .../field/io/FieldDataFileOperationSpec.java | 23 ++++++++++++++++ .../main/java/cbit/vcell/math/Variable.java | 5 ++++ .../java/cbit/vcell/math/VariableType.java | 22 +++++++++++++--- .../cbit/vcell/simdata/DataIdentifier.java | 5 ++++ .../util/document/ExternalDataIdentifier.java | 13 ++++++++++ .../org/vcell/util/document/KeyValue.java | 10 +++++++ .../java/org/vcell/util/document/User.java | 7 +++++ .../src/main/java/org/vcell/util/Extent.java | 12 +++++++++ .../src/main/java/org/vcell/util/ISize.java | 13 ++++++++++ .../src/main/java/org/vcell/util/Origin.java | 14 +++++++++- 11 files changed, 146 insertions(+), 4 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java index 973d679418..68e9dfa90b 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java @@ -10,6 +10,7 @@ package cbit.vcell.field.io; +import org.vcell.restclient.model.FieldDataReferenceInfo; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; @@ -17,6 +18,8 @@ import cbit.vcell.simdata.DataIdentifier; +import java.util.Arrays; + /** * Insert the type's description here. * Creation date: (1/10/2007 11:01:45 AM) @@ -35,6 +38,18 @@ public static class FieldDataReferenceInfo{ public String refSourceVersionDate; public String[] funcNames; public KeyValue refSourceVersionKey; + + public static FieldDataReferenceInfo dtoToFielddataFileOperationResults(org.vcell.restclient.model.FieldDataReferenceInfo dto){ + FieldDataReferenceInfo fieldDataReferenceInfo = new FieldDataReferenceInfo(); + fieldDataReferenceInfo.referenceSourceType = dto.getReferenceSourceType(); + fieldDataReferenceInfo.referenceSourceName = dto.getReferenceSourceName(); + fieldDataReferenceInfo.simulationName = dto.getSimulationName(); + fieldDataReferenceInfo.applicationName = dto.getApplicationName(); + fieldDataReferenceInfo.refSourceVersionDate = dto.getRefSourceVersionDate(); + fieldDataReferenceInfo.funcNames = dto.getFuncNames().toArray(new String[0]); + fieldDataReferenceInfo.refSourceVersionKey = KeyValue.dtoToKeyValue(dto.getRefSourceVersionKey()); + return fieldDataReferenceInfo; + } }; @@ -44,6 +59,17 @@ public static class FieldDataReferenceInfo{ public Extent extent; public double[] times; public FieldDataFileOperationResults.FieldDataReferenceInfo[] dependantFunctionInfo; + + public static FieldDataFileOperationResults dtoToFieldDataFileOperationResults(org.vcell.restclient.model.FieldDataFileOperationResults dto){ + FieldDataFileOperationResults fieldDataFileOperationResults = new FieldDataFileOperationResults(); + fieldDataFileOperationResults.extent = Extent.dtoToExtent(dto.getExtent()); + fieldDataFileOperationResults.iSize = ISize.dtoToISize(dto.getiSize()); + fieldDataFileOperationResults.origin = Origin.dtoToOrigin(dto.getOrigin()); + fieldDataFileOperationResults.dataIdentifierArr = dto.getDataIdentifierArr().stream().map(DataIdentifier::dtoToDataIdentifier).toArray(DataIdentifier[]::new); + fieldDataFileOperationResults.times = dto.getTimes().stream().mapToDouble(Double::doubleValue).toArray(); + fieldDataFileOperationResults.dependantFunctionInfo = dto.getDependantFunctionInfo().stream().map(FieldDataReferenceInfo::dtoToFielddataFileOperationResults).toArray(FieldDataReferenceInfo[]::new); + return fieldDataFileOperationResults; + } public FieldDataFileOperationResults() { super(); diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java index 5799b60c41..3d51ffa802 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java @@ -10,6 +10,7 @@ package cbit.vcell.field.io; +import org.vcell.restclient.model.FieldDataFileOperationResults; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; @@ -59,6 +60,28 @@ public class FieldDataFileOperationSpec implements java.io.Serializable{ public FieldDataFileOperationSpec() { } +public FieldDataFileOperationSpec(short[][][] shortSpecData, double[][][] doubleSpecData, CartesianMesh cartesianMesh, + ExternalDataIdentifier specEDI, String[] varNames, VariableType[] variableTypes, + double[] times, User owner, Origin origin, Extent extent, ISize isize, + String annotation, int sourceSimParamScanJobIndex, KeyValue sourceSimDataKey, + User sourceOwner){ + this.shortSpecData = shortSpecData; + this.doubleSpecData = doubleSpecData; + this.cartesianMesh = cartesianMesh; + this.specEDI = specEDI; + this.varNames = varNames; + this.variableTypes = variableTypes; + this.times = times; + this.owner = owner; + this.origin = origin; + this.extent = extent; + this.isize = isize; + this.annotation = annotation; + this.sourceSimParamScanJobIndex = sourceSimParamScanJobIndex; + this.sourceSimDataKey = sourceSimDataKey; + this.sourceOwner = sourceOwner; +} + public static FieldDataFileOperationSpec createCopySimFieldDataFileOperationSpec( ExternalDataIdentifier newExtDataID, KeyValue argSourceSimDataKey, diff --git a/vcell-core/src/main/java/cbit/vcell/math/Variable.java b/vcell-core/src/main/java/cbit/vcell/math/Variable.java index e7bbf5d25b..b1b489e51f 100644 --- a/vcell-core/src/main/java/cbit/vcell/math/Variable.java +++ b/vcell-core/src/main/java/cbit/vcell/math/Variable.java @@ -13,6 +13,7 @@ import java.io.Serializable; import java.util.StringTokenizer; +import org.vcell.restclient.model.Domain; import org.vcell.util.Compare; import org.vcell.util.EqualsUtil; import org.vcell.util.Issue.IssueSource; @@ -44,6 +45,10 @@ void rename(String newName) { public static class Domain implements Matchable, Serializable { private String name = null; + + public static Domain dtoToDomain(org.vcell.restclient.model.Domain dto){ + return new Domain(dto.getName()); + } public Domain(String argName){ String nameWithPeriodsMangled = argName.replace('.','_'); diff --git a/vcell-core/src/main/java/cbit/vcell/math/VariableType.java b/vcell-core/src/main/java/cbit/vcell/math/VariableType.java index d90ec19704..11fbdb1a0d 100644 --- a/vcell-core/src/main/java/cbit/vcell/math/VariableType.java +++ b/vcell-core/src/main/java/cbit/vcell/math/VariableType.java @@ -30,9 +30,25 @@ public class VariableType implements java.io.Serializable, org.vcell.util.Matcha private int type = -1; private VariableDomain variableDomain; - private final String name; - private final String units; - private final String label; + private String name; + private String units; + private String label; + + public VariableType(){} + + public static org.vcell.restclient.model.VariableType variableTypeToDTO(VariableType vt) { + org.vcell.restclient.model.VariableType dto = new org.vcell.restclient.model.VariableType(); + dto.setType(vt.type); + dto.setName(vt.name); + dto.setUnits(vt.units); + dto.setLabel(vt.label); + return dto; + } + + public static VariableType dtoToVariableType(org.vcell.restclient.model.VariableType dto) { + return new VariableType(dto.getType(), dto.getName(), dto.getUnits(), dto.getLabel()); + } + /** * mark types that were not previously supported by {@link #getVariableTypeFromInteger(int)}, issue warning if triggered */ diff --git a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java index 98c6f159d5..5a37aa73da 100644 --- a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java +++ b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java @@ -28,6 +28,11 @@ public class DataIdentifier implements java.io.Serializable { private Domain domain = null; private boolean bFunction = false; + public static DataIdentifier dtoToDataIdentifier(org.vcell.restclient.model.DataIdentifier dto) { + return new DataIdentifier(dto.getName(), VariableType.dtoToVariableType(dto.getVariableType()), + Domain.dtoToDomain(dto.getDomain()), dto.getbFunction(), dto.getDisplayName()); + } + /** * DataIdentifier constructor comment. diff --git a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java index 5f761c2eb4..de0ab1f18a 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java +++ b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java @@ -25,9 +25,22 @@ public class ExternalDataIdentifier implements SimResampleInfoProvider,java.io.S private org.vcell.util.document.User owner; private String name; + public static org.vcell.restclient.model.ExternalDataIdentifier externalDataIdentifierToDTO(ExternalDataIdentifier externalDataIdentifier) { + org.vcell.restclient.model.ExternalDataIdentifier dto = new org.vcell.restclient.model.ExternalDataIdentifier(); + dto.key(KeyValue.keyValueToDTO(externalDataIdentifier.getKey())); + dto.owner(User.userToDTO(externalDataIdentifier.getOwner())); + dto.name(externalDataIdentifier.getName()); + return dto; + } + /** * FieldDataIdentifier constructor comment. */ + +public ExternalDataIdentifier(){ + super(); +} + public ExternalDataIdentifier(KeyValue arg_key, org.vcell.util.document.User argOwner,String argName) { super(); key = arg_key; diff --git a/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java b/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java index ef704c1842..193803007d 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java +++ b/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java @@ -20,6 +20,16 @@ public class KeyValue implements java.io.Serializable, Matchable { private java.math.BigDecimal value = null; + public static org.vcell.restclient.model.KeyValue keyValueToDTO(KeyValue kv) { + org.vcell.restclient.model.KeyValue k = new org.vcell.restclient.model.KeyValue(); + k.setValue(kv.value); + return k; + } + public static KeyValue dtoToKeyValue(org.vcell.restclient.model.KeyValue dto){ + return new KeyValue(dto.getValue()); + } + + public KeyValue(String value) throws NumberFormatException { this.value = new java.math.BigDecimal(value); } diff --git a/vcell-core/src/main/java/org/vcell/util/document/User.java b/vcell-core/src/main/java/org/vcell/util/document/User.java index 38ccdd7ecf..8f39acd2d3 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/User.java +++ b/vcell-core/src/main/java/org/vcell/util/document/User.java @@ -25,6 +25,13 @@ public class User implements java.io.Serializable, Matchable, Immutable { private final static String PREVIOUS_DATABASE_VALUE_POWERUSER = "special1"; private final static String PREVIOUS_DATABASE_VALUE_PUBLICATION = "publication"; + public static org.vcell.restclient.model.User userToDTO(User user) { + org.vcell.restclient.model.User userDTO = new org.vcell.restclient.model.User(); + userDTO.setUserName(user.userName); + userDTO.setKey(KeyValue.keyValueToDTO(user.key)); + return userDTO; + } + public enum SPECIAL_CLAIM { admins/*special0*/, powerUsers/*special1*/, diff --git a/vcell-util/src/main/java/org/vcell/util/Extent.java b/vcell-util/src/main/java/org/vcell/util/Extent.java index 647ed4e8c2..cabb97e9bc 100644 --- a/vcell-util/src/main/java/org/vcell/util/Extent.java +++ b/vcell-util/src/main/java/org/vcell/util/Extent.java @@ -25,6 +25,18 @@ public class Extent implements java.io.Serializable, Matchable { private double z; public Extent() {}//For jaxb + public static org.vcell.restclient.model.Extent extentToDTO(Extent extent) { + org.vcell.restclient.model.Extent newExtent = new org.vcell.restclient.model.Extent(); + newExtent.setX(extent.getX()); + newExtent.setY(extent.getY()); + newExtent.setZ(extent.getZ()); + return newExtent; + } + + public static Extent dtoToExtent(org.vcell.restclient.model.Extent dto) { + return new Extent(dto.getX(), dto.getY(), dto.getZ()); + } + /** * Origin constructor comment. */ diff --git a/vcell-util/src/main/java/org/vcell/util/ISize.java b/vcell-util/src/main/java/org/vcell/util/ISize.java index c31626c4c4..cb519e9eb1 100644 --- a/vcell-util/src/main/java/org/vcell/util/ISize.java +++ b/vcell-util/src/main/java/org/vcell/util/ISize.java @@ -19,6 +19,19 @@ public class ISize implements java.io.Serializable, Matchable { private int y; private int z; + public static org.vcell.restclient.model.ISize iSizeToDTO(ISize iSize){ + org.vcell.restclient.model.ISize iSizeDTO = new org.vcell.restclient.model.ISize(); + iSizeDTO.setX(iSize.getX()); + iSizeDTO.setY(iSize.getY()); + iSizeDTO.setZ(iSize.getZ()); + return iSizeDTO; + } + + public static ISize dtoToISize(org.vcell.restclient.model.ISize dto){ + return new ISize(dto.getX(), dto.getY(), dto.getZ()); + } + public ISize(){} + /** * Origin constructor comment. */ diff --git a/vcell-util/src/main/java/org/vcell/util/Origin.java b/vcell-util/src/main/java/org/vcell/util/Origin.java index 9d2165aed0..da911ee068 100644 --- a/vcell-util/src/main/java/org/vcell/util/Origin.java +++ b/vcell-util/src/main/java/org/vcell/util/Origin.java @@ -23,7 +23,19 @@ public class Origin implements java.io.Serializable, Matchable { @XmlAttribute private double z; public Origin() {}//For jaxb - + +public static org.vcell.restclient.model.Origin originToDTO(Origin origin){ + org.vcell.restclient.model.Origin dtoOrigin = new org.vcell.restclient.model.Origin(); + dtoOrigin.setX(origin.getX()); + dtoOrigin.setY(origin.getY()); + dtoOrigin.setZ(origin.getZ()); + return dtoOrigin; +} + +public static Origin dtoToOrigin(org.vcell.restclient.model.Origin dtoOrigin){ + return new Origin(dtoOrigin.getX(), dtoOrigin.getY(), dtoOrigin.getZ()); +} + /** * Origin constructor comment. */ From 0d20c36c877733da15993c415faf61fdc37143c7 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 11 Dec 2024 08:23:29 -0500 Subject: [PATCH 05/37] Move Field Data File Conversion --- .../vcell/client/ClientRequestManager.java | 70 +-------------- .../vcell/field/FieldDataFileConversion.java | 85 +++++++++++++++++++ 2 files changed, 87 insertions(+), 68 deletions(-) create mode 100644 vcell-core/src/main/java/cbit/vcell/field/FieldDataFileConversion.java diff --git a/vcell-client/src/main/java/cbit/vcell/client/ClientRequestManager.java b/vcell-client/src/main/java/cbit/vcell/client/ClientRequestManager.java index 30fac3a637..0d40d80bdb 100644 --- a/vcell-client/src/main/java/cbit/vcell/client/ClientRequestManager.java +++ b/vcell-client/src/main/java/cbit/vcell/client/ClientRequestManager.java @@ -37,6 +37,7 @@ import cbit.vcell.export.server.ExportSpecs; import cbit.vcell.export.server.HumanReadableExportData; import cbit.vcell.export.server.N5Specs; +import cbit.vcell.field.FieldDataFileConversion; import cbit.vcell.field.io.FieldDataFileOperationSpec; import cbit.vcell.geometry.*; import cbit.vcell.geometry.gui.ROIMultiPaintManager; @@ -1744,7 +1745,7 @@ public int compare(File o1, File o2) { ImageDataset[] imageDatasets = ImageDatasetReaderService.getInstance().getImageDatasetReader() .readImageDatasetChannels(imageFile.getAbsolutePath(), getClientTaskStatusSupport(), bMergeChannels, userPreferredTimeIndex, resize); - fdfos = ClientRequestManager.createFDOSWithChannels(imageDatasets, null); + fdfos = FieldDataFileConversion.createFDOSWithChannels(imageDatasets, null); } hashTable.put(FDFOS, fdfos); hashTable.remove(NEW_IMAGE_SIZE_INFO); @@ -4574,73 +4575,6 @@ public void showComparisonResults(TopLevelWindowManager requester, XmlTreeDiff d // } //} - public static FieldDataFileOperationSpec createFDOSFromImageFile(File imageFile, boolean bCropOutBlack, - Integer saveOnlyThisTimePointIndex) throws DataFormatException, ImageException { - try { - ImageDatasetReader imageDatasetReader = ImageDatasetReaderService.getInstance().getImageDatasetReader(); - ImageDataset[] imagedataSets = imageDatasetReader.readImageDatasetChannels(imageFile.getAbsolutePath(), - null, false, saveOnlyThisTimePointIndex, null); - if (imagedataSets != null && bCropOutBlack) { - for (int i = 0; i < imagedataSets.length; i++) { - Rectangle nonZeroRect = imagedataSets[i].getNonzeroBoundingRectangle(); - if (nonZeroRect != null) { - imagedataSets[i] = imagedataSets[i].crop(nonZeroRect); - } - } - } - return createFDOSWithChannels(imagedataSets, null); - } catch (Exception e) { - e.printStackTrace(System.out); - throw new DataFormatException(e.getMessage()); - } - } - - public static FieldDataFileOperationSpec createFDOSWithChannels(ImageDataset[] imagedataSets, - Integer saveOnlyThisTimePointIndex) { - final FieldDataFileOperationSpec fdos = new FieldDataFileOperationSpec(); - - // [time][var][data] - int numXY = imagedataSets[0].getISize().getX() * imagedataSets[0].getISize().getY(); - int numXYZ = imagedataSets[0].getSizeZ() * numXY; - fdos.variableTypes = new VariableType[imagedataSets.length]; - fdos.varNames = new String[imagedataSets.length]; - short[][][] shortData = new short[(saveOnlyThisTimePointIndex != null ? 1 - : imagedataSets[0].getSizeT())][imagedataSets.length][numXYZ]; - for (int c = 0; c < imagedataSets.length; c += 1) { - fdos.variableTypes[c] = VariableType.VOLUME; - fdos.varNames[c] = "Channel" + c; - for (int t = 0; t < imagedataSets[c].getSizeT(); t += 1) { - if (saveOnlyThisTimePointIndex != null && saveOnlyThisTimePointIndex.intValue() != t) { - continue; - } - int zOffset = 0; - for (int z = 0; z < imagedataSets[c].getSizeZ(); z += 1) { - UShortImage ushortImage = imagedataSets[c].getImage(z, 0, t); - System.arraycopy(ushortImage.getPixels(), 0, - shortData[(saveOnlyThisTimePointIndex != null ? 0 : t)][c], zOffset, numXY); -// shortData[t][c] = ushortImage.getPixels(); - zOffset += numXY; - } - } - } - fdos.shortSpecData = shortData; - fdos.times = imagedataSets[0].getImageTimeStamps(); - if (fdos.times == null) { - fdos.times = new double[imagedataSets[0].getSizeT()]; - for (int i = 0; i < fdos.times.length; i += 1) { - fdos.times[i] = i; - } - } - - fdos.origin = (imagedataSets[0].getAllImages()[0].getOrigin() != null - ? imagedataSets[0].getAllImages()[0].getOrigin() - : new Origin(0, 0, 0)); - fdos.extent = (imagedataSets[0].getExtent() != null) ? (imagedataSets[0].getExtent()) : (new Extent(1, 1, 1)); - fdos.isize = imagedataSets[0].getISize(); - - return fdos; - - } public void accessPermissions(Component requester, VCDocument vcDoc) { VersionInfo selectedVersionInfo = null; diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataFileConversion.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataFileConversion.java new file mode 100644 index 0000000000..bdcc5a0d13 --- /dev/null +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataFileConversion.java @@ -0,0 +1,85 @@ +package cbit.vcell.field; + +import cbit.image.ImageException; +import cbit.vcell.VirtualMicroscopy.ImageDataset; +import cbit.vcell.VirtualMicroscopy.UShortImage; +import cbit.vcell.field.io.FieldDataFileOperationSpec; +import cbit.vcell.math.VariableType; +import org.vcell.util.Extent; +import org.vcell.util.Origin; +import org.vcell.vcellij.ImageDatasetReader; +import org.vcell.vcellij.ImageDatasetReaderService; + +import java.awt.*; +import java.io.File; +import java.util.zip.DataFormatException; + +public class FieldDataFileConversion { + public static FieldDataFileOperationSpec createFDOSFromImageFile(File imageFile, boolean bCropOutBlack, + Integer saveOnlyThisTimePointIndex) throws DataFormatException, ImageException { + try { + ImageDatasetReader imageDatasetReader = ImageDatasetReaderService.getInstance().getImageDatasetReader(); + ImageDataset[] imagedataSets = imageDatasetReader.readImageDatasetChannels(imageFile.getAbsolutePath(), + null, false, saveOnlyThisTimePointIndex, null); + if (imagedataSets != null && bCropOutBlack) { + for (int i = 0; i < imagedataSets.length; i++) { + Rectangle nonZeroRect = imagedataSets[i].getNonzeroBoundingRectangle(); + if (nonZeroRect != null) { + imagedataSets[i] = imagedataSets[i].crop(nonZeroRect); + } + } + } + return createFDOSWithChannels(imagedataSets, null); + } catch (Exception e) { + e.printStackTrace(System.out); + throw new DataFormatException(e.getMessage()); + } + } + + public static FieldDataFileOperationSpec createFDOSWithChannels(ImageDataset[] imagedataSets, + Integer saveOnlyThisTimePointIndex) { + final FieldDataFileOperationSpec fdos = new FieldDataFileOperationSpec(); + + // [time][var][data] + int numXY = imagedataSets[0].getISize().getX() * imagedataSets[0].getISize().getY(); + int numXYZ = imagedataSets[0].getSizeZ() * numXY; + fdos.variableTypes = new VariableType[imagedataSets.length]; + fdos.varNames = new String[imagedataSets.length]; + short[][][] shortData = new short[(saveOnlyThisTimePointIndex != null ? 1 + : imagedataSets[0].getSizeT())][imagedataSets.length][numXYZ]; + for (int c = 0; c < imagedataSets.length; c += 1) { + fdos.variableTypes[c] = VariableType.VOLUME; + fdos.varNames[c] = "Channel" + c; + for (int t = 0; t < imagedataSets[c].getSizeT(); t += 1) { + if (saveOnlyThisTimePointIndex != null && saveOnlyThisTimePointIndex.intValue() != t) { + continue; + } + int zOffset = 0; + for (int z = 0; z < imagedataSets[c].getSizeZ(); z += 1) { + UShortImage ushortImage = imagedataSets[c].getImage(z, 0, t); + System.arraycopy(ushortImage.getPixels(), 0, + shortData[(saveOnlyThisTimePointIndex != null ? 0 : t)][c], zOffset, numXY); +// shortData[t][c] = ushortImage.getPixels(); + zOffset += numXY; + } + } + } + fdos.shortSpecData = shortData; + fdos.times = imagedataSets[0].getImageTimeStamps(); + if (fdos.times == null) { + fdos.times = new double[imagedataSets[0].getSizeT()]; + for (int i = 0; i < fdos.times.length; i += 1) { + fdos.times[i] = i; + } + } + + fdos.origin = (imagedataSets[0].getAllImages()[0].getOrigin() != null + ? imagedataSets[0].getAllImages()[0].getOrigin() + : new Origin(0, 0, 0)); + fdos.extent = (imagedataSets[0].getExtent() != null) ? (imagedataSets[0].getExtent()) : (new Extent(1, 1, 1)); + fdos.isize = imagedataSets[0].getISize(); + + return fdos; + + } +} From 52cb9a6d036693447f574855c8fd58502324847d Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Tue, 17 Dec 2024 10:28:16 -0500 Subject: [PATCH 06/37] Simplify Field Data GUI Panel --- .../gui/FieldDataGUIDataTransferObjects.java | 155 ++++ .../vcell/field/gui/FieldDataGUIPanel.java | 803 +++++------------- 2 files changed, 364 insertions(+), 594 deletions(-) create mode 100644 vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIDataTransferObjects.java diff --git a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIDataTransferObjects.java b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIDataTransferObjects.java new file mode 100644 index 0000000000..8d677a9772 --- /dev/null +++ b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIDataTransferObjects.java @@ -0,0 +1,155 @@ +package cbit.vcell.field.gui; + +import cbit.vcell.math.VariableType; +import cbit.vcell.simdata.DataIdentifier; +import org.vcell.util.Extent; +import org.vcell.util.ISize; +import org.vcell.util.Origin; +import org.vcell.util.document.ExternalDataIdentifier; +import org.vcell.util.document.KeyValue; + +class FieldDataGUIDataTransferObjects { + + + static class FieldDataIDList { + // public KeyValue key = null; + private final String descr; + + public FieldDataIDList(KeyValue k) { +// this.key = k; + this.descr = "Key (" + k + ")"; + } + + public String toString() { + return descr; + } + } + + static class FieldDataISizeList { + public ISize isize; + private final String descr; + + public FieldDataISizeList(ISize arg) { + isize = arg; + descr = "Size ( " + + isize.getX() + " , " + + isize.getY() + " , " + + isize.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + static class FieldDataMainList { + public ExternalDataIdentifier externalDataIdentifier; + public String extDataAnnot; + + public FieldDataMainList(ExternalDataIdentifier argExternalDataIdentifier, String argExtDataAnnot) { + externalDataIdentifier = argExternalDataIdentifier; + extDataAnnot = argExtDataAnnot; + } + + public String toString() { + return externalDataIdentifier.getName(); + } + } + + static class FieldDataOriginList { + public Origin origin; + private final String descr; + + public FieldDataOriginList(Origin arg) { + origin = arg; + descr = "Origin ( " + + origin.getX() + " , " + + origin.getY() + " , " + + origin.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + static class FieldDataTimeList { + public double[] times; + private final String descr; + + public FieldDataTimeList(double[] argTimes) { + times = argTimes; + descr = + "Times ( " + times.length + " ) Begin=" + times[0] + + " End=" + times[times.length - 1]; + } + + public String toString() { + return descr; + } + } + + static class FieldDataVarList { + public DataIdentifier dataIdentifier; + private final String descr; + + public FieldDataVarList(DataIdentifier argDataIdentifier) { + dataIdentifier = argDataIdentifier; + if (dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME) || + dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME_REGION)) { + descr = "(Vol" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } else if (dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE) || + dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE_REGION)) { + descr = "(Mem" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } else { + descr = "(---" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); + } + } + + public String toString() { + return descr; + } + } + + static class FieldDataVarMainList { + public static final String LIST_NODE_VAR_LABEL = "Variables"; + + public FieldDataVarMainList() { + } + + public String toString() { + return LIST_NODE_VAR_LABEL; + } + } + + static class InitializedRootNode { + private final String rootNodeString; + + public InitializedRootNode(String argRNS) { + rootNodeString = argRNS; + } + + public String toString() { + return rootNodeString; + } + } + + static class FieldDataExtentList { + public Extent extent; + private final String descr; + + public FieldDataExtentList(Extent arg) { + extent = arg; + descr = "Extent ( " + + extent.getX() + " , " + + extent.getY() + " , " + + extent.getZ() + " )"; + } + + public String toString() { + return descr; + } + } + + +} diff --git a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java index cf8f6356d1..10a57e3c8f 100644 --- a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java +++ b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java @@ -41,6 +41,8 @@ import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.TreePath; +import cbit.vcell.field.FieldDataFileConversion; +import org.vcell.api.client.VCellApiClient; import org.vcell.util.BeanUtils; import org.vcell.util.Extent; import org.vcell.util.ISize; @@ -48,7 +50,6 @@ import org.vcell.util.TokenMangler; import org.vcell.util.UserCancelException; import org.vcell.util.document.ExternalDataIdentifier; -import org.vcell.util.document.KeyValue; import org.vcell.util.document.VCDocument; import org.vcell.util.document.Version; import org.vcell.util.gui.DialogUtils; @@ -80,309 +81,106 @@ import cbit.vcell.simdata.SimulationData; import cbit.vcell.solver.SimulationInfo; import cbit.vcell.solvers.CartesianMesh; +import cbit.vcell.field.gui.FieldDataGUIDataTransferObjects.*; public class FieldDataGUIPanel extends JPanel { private static final String FIELD_DATA_INFO = "Field Data Info"; public static final String FIELD_NAME = "fieldName"; public static final String USER_DEFINED_FDOS = "userDefinedFDOS"; - // - public static final String LIST_NODE_VAR_LABEL = "Variables"; - // + private final JPopupMenu jPopupMenu = new JPopupMenu(); private static final int COPY_CSV = 0; private static final int COPY_NL = 1; private static final int COPY_CRNL = 2; private static final int COPY_SPACE = 3; - // - private static class InitializedRootNode { - private final String rootNodeString; - - public InitializedRootNode(String argRNS) { - rootNodeString = argRNS; - } - - public String toString() { - return rootNodeString; - } - } - - private static class FieldDataMainList { - public ExternalDataIdentifier externalDataIdentifier; - public String extDataAnnot; - - public FieldDataMainList(ExternalDataIdentifier argExternalDataIdentifier, String argExtDataAnnot) { - externalDataIdentifier = argExternalDataIdentifier; - extDataAnnot = argExtDataAnnot; - } - - public String toString() { - return externalDataIdentifier.getName(); - } - } - - private static class FieldDataVarMainList { - public FieldDataVarMainList() { - } - - public String toString() { - return LIST_NODE_VAR_LABEL; - } - } - - private static class FieldDataVarList { - public DataIdentifier dataIdentifier; - private final String descr; - - public FieldDataVarList(DataIdentifier argDataIdentifier) { - dataIdentifier = argDataIdentifier; - if (dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME) || - dataIdentifier.getVariableType().compareEqual(VariableType.VOLUME_REGION)) { - descr = "(Vol" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); - } else if (dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE) || - dataIdentifier.getVariableType().compareEqual(VariableType.MEMBRANE_REGION)) { - descr = "(Mem" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); - } else { - descr = "(---" + (dataIdentifier.isFunction() ? "Fnc" : "") + ") " + dataIdentifier.getName(); - } - } - - public String toString() { - return descr; - } - } - - private static class FieldDataTimeList { - public double[] times; - private final String descr; - - public FieldDataTimeList(double[] argTimes) { - times = argTimes; - descr = - "Times ( " + times.length + " ) Begin=" + times[0] + - " End=" + times[times.length - 1]; - } - - public String toString() { - return descr; - } - } - - private static class FieldDataIDList { - // public KeyValue key = null; - private final String descr; - - public FieldDataIDList(KeyValue k) { -// this.key = k; - this.descr = "Key (" + k + ")"; - } - - public String toString() { - return descr; - } - } - - private static class FieldDataISizeList { - public ISize isize; - private final String descr; - - public FieldDataISizeList(ISize arg) { - isize = arg; - descr = "Size ( " + - isize.getX() + " , " + - isize.getY() + " , " + - isize.getZ() + " )"; - } - - public String toString() { - return descr; - } - } - - private static class FieldDataOriginList { - public Origin origin; - private final String descr; - - public FieldDataOriginList(Origin arg) { - origin = arg; - descr = "Origin ( " + - origin.getX() + " , " + - origin.getY() + " , " + - origin.getZ() + " )"; - } - - public String toString() { - return descr; - } - } - - private static class FieldDataExtentList { - public Extent extent; - private final String descr; - - public FieldDataExtentList(Extent arg) { - extent = arg; - descr = "Extent ( " + - extent.getX() + " , " + - extent.getY() + " , " + - extent.getZ() + " )"; - } - - public String toString() { - return descr; - } - } - private FieldDataWindowManager fieldDataWindowManager; - // - private javax.swing.JButton ivjJButtonFDDelete = null; + private javax.swing.JButton fdDeleteButton = null; private javax.swing.JPanel ivjJPanel1 = null; private javax.swing.JPanel normalTopPanel = null; - private javax.swing.JButton ivjJButtonFDView = null; + private javax.swing.JButton fdViewButton = null; private javax.swing.JTree ivjJTree1 = null; IvjEventHandler ivjEventHandler = new IvjEventHandler(); private javax.swing.JScrollPane ivjJScrollPane1 = null; - private javax.swing.JButton ivjJButtonFDCopyRef = null; + private javax.swing.JButton fdCopyReferenceButton = null; private JButton jButtonFindRefModel = null; private JPanel jPanel = null; - private JButton jButtonCreateGeom = null; + private JButton createGeomButton = null; private JPanel jPanel1 = null; - private JButton jButtonViewAnnot = null; + private JButton viewAnnotButton = null; + private JButton fdCreateButton; + + private JComboBox jComboBoxCreate; + private static final String FROM_FILE = "from File"; + private static final String FROM_SIM = "from Simulation"; + class IvjEventHandler implements ActionListener, TreeExpansionListener, javax.swing.event.TreeSelectionListener { public void actionPerformed(java.awt.event.ActionEvent e) { if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDDelete()) - connEtoC7(e); + fdDelete(e); if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCopyRef()) - connEtoC8(e); + fdCopyRef(e); if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDView()) - connEtoC10(e); + viewFieldData(e); if (e.getSource() == FieldDataGUIPanel.this.getJButtonFDCreate()) if (getCreateJComboBox().getSelectedItem().equals(FROM_SIM)) { - jButtonFDFromSim_ActionPerformed(e); + fdFromSim(e); } else if (getCreateJComboBox().getSelectedItem().equals(FROM_FILE)) { - jButtonFDFromFile_ActionPerformed(e); + fdFromFile(); } -// else if(getCreateJComboBox().getSelectedItem().equals(FROM_IMAGEJ)){ -// fromImageJ(); -// } } - ; public void treeCollapsed(javax.swing.event.TreeExpansionEvent event) { } - ; public void treeExpanded(javax.swing.event.TreeExpansionEvent event) { if (event.getSource() == FieldDataGUIPanel.this.getFieldDataTree()) - connEtoC6(event); + FieldDataGUIPanel.this.treeExpanded(event); } - ; - public void valueChanged(javax.swing.event.TreeSelectionEvent e) { if (e.getSource() == FieldDataGUIPanel.this.getFieldDataTree()) - connEtoC2(e); + FieldDataGUIPanel.this.treeValueChanged(e); } - ; } - ; - /** - * FieldDataGUIPanel constructor comment. - */ public FieldDataGUIPanel() { super(); - initialize(); - } - - /** - * connEtoC1: (FieldDataGUIPanel.initialize() --> FieldDataGUIPanel.fieldDataGUIPanel_Initialize()V) - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ - private void connEtoC1() { - try { - // user code begin {1} - // user code end - this.fieldDataGUIPanel_Initialize(); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } - } - - - /** - * connEtoC2: (JTree1.treeSelection.valueChanged(javax.swing.event.TreeSelectionEvent) --> FieldDataGUIPanel.jTree1_ValueChanged(Ljavax.swing.event.TreeSelectionEvent;)V) - * - * @param arg1 javax.swing.event.TreeSelectionEvent - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ - private void connEtoC2(javax.swing.event.TreeSelectionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jTree1_ValueChanged(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } - } - - - private void connEtoC6(javax.swing.event.TreeExpansionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jTree1_TreeExpanded(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } - } - - private void connEtoC7(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDDelete_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } + setName("FieldDataGUIPanel"); + setLayout(new GridBagLayout()); + setSize(676, 430); + + GridBagConstraints gbc_normalTopPanel = new GridBagConstraints(); + gbc_normalTopPanel.gridx = 0; + gbc_normalTopPanel.gridy = 0; + gbc_normalTopPanel.fill = GridBagConstraints.BOTH; + gbc_normalTopPanel.insets = new Insets(4, 4, 4, 4); + add(getNormalTopPanel(), gbc_normalTopPanel); + + GridBagConstraints constraintsJScrollPane1 = new GridBagConstraints(); + constraintsJScrollPane1.gridx = 0; + constraintsJScrollPane1.gridy = 1; + constraintsJScrollPane1.fill = GridBagConstraints.BOTH; + constraintsJScrollPane1.weightx = 1.0; + constraintsJScrollPane1.weighty = 1.0; + constraintsJScrollPane1.insets = new Insets(4, 4, 4, 4); + add(getMainScrollPanel(), constraintsJScrollPane1); + getFieldDataTree().addTreeSelectionListener(ivjEventHandler); + getFieldDataTree().addTreeExpansionListener(ivjEventHandler); + getJButtonFDDelete().addActionListener(ivjEventHandler); + getJButtonFDCopyRef().addActionListener(ivjEventHandler); + getJButtonFDCreate().addActionListener(ivjEventHandler); + getJButtonFDView().addActionListener(ivjEventHandler); + this.fieldDataGUIPanel_Initialize(); } - private void connEtoC8(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDCopyRef_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } - } private void copyMethod(int copyMode) { String delimiter = ""; @@ -449,23 +247,7 @@ private void copyMethod(int copyMode) { } } - private void connEtoC10(java.awt.event.ActionEvent arg1) { - try { - // user code begin {1} - // user code end - this.jButtonFDView_ActionPerformed(arg1); - // user code begin {2} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {3} - // user code end - handleException(ivjExc); - } - } - /** - * Comment - */ private void fieldDataGUIPanel_Initialize() { getFieldDataTree().getSelectionModel().setSelectionMode(javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION); @@ -565,75 +347,37 @@ public void run(Hashtable hashTable) throws Exception { */ /* WARNING: THIS METHOD WILL BE REGENERATED. */ private javax.swing.JButton getJButtonFDCopyRef() { - if (ivjJButtonFDCopyRef == null) { - try { - ivjJButtonFDCopyRef = new javax.swing.JButton(); - ivjJButtonFDCopyRef.setName("JButtonFDCopyRef"); - ivjJButtonFDCopyRef.setText("Copy Func"); - ivjJButtonFDCopyRef.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } + if (fdCopyReferenceButton == null) { + fdCopyReferenceButton = new javax.swing.JButton(); + fdCopyReferenceButton.setName("JButtonFDCopyRef"); + fdCopyReferenceButton.setText("Copy Func"); + fdCopyReferenceButton.setEnabled(false); } - return ivjJButtonFDCopyRef; + return fdCopyReferenceButton; } - /** - * Return the JButtonFDDelete property value. - * - * @return javax.swing.JButton - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JButton getJButtonFDDelete() { - if (ivjJButtonFDDelete == null) { - try { - ivjJButtonFDDelete = new javax.swing.JButton(); - ivjJButtonFDDelete.setName("JButtonFDDelete"); - ivjJButtonFDDelete.setText("Delete"); - ivjJButtonFDDelete.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } + if (fdDeleteButton == null) { + fdDeleteButton = new javax.swing.JButton(); + fdDeleteButton.setName("JButtonFDDelete"); + fdDeleteButton.setText("Delete"); + fdDeleteButton.setEnabled(false); } - return ivjJButtonFDDelete; + return fdDeleteButton; } - private JButton ivjJButtonFDCreate; - /** - * Return the JButtonFDFromFile property value. - * - * @return javax.swing.JButton - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ private JButton getJButtonFDCreate() { - if (ivjJButtonFDCreate == null) { - try { - ivjJButtonFDCreate = new javax.swing.JButton(); - ivjJButtonFDCreate.setName("JButtonFDFromCreate"); - ivjJButtonFDCreate.setText("Create..."); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } + if (fdCreateButton == null) { + fdCreateButton = new javax.swing.JButton(); + fdCreateButton.setName("JButtonFDFromCreate"); + fdCreateButton.setText("Create..."); } - return ivjJButtonFDCreate; + return fdCreateButton; } - private JComboBox jComboBoxCreate; - private static final String FROM_FILE = "from File"; - private static final String FROM_SIM = "from Simulation"; + //private static final String FROM_IMAGEJ = "from ImageJ"; private JComboBox getCreateJComboBox() { @@ -643,124 +387,86 @@ private JComboBox getCreateJComboBox() { return jComboBoxCreate; } - /** - * Return the JButtonFDView property value. - * - * @return javax.swing.JButton - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ private javax.swing.JButton getJButtonFDView() { - if (ivjJButtonFDView == null) { - try { - ivjJButtonFDView = new javax.swing.JButton(); - ivjJButtonFDView.setName("JButtonFDView"); - ivjJButtonFDView.setText("View..."); - ivjJButtonFDView.setEnabled(false); - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } + if (fdViewButton == null) { + fdViewButton = new javax.swing.JButton(); + fdViewButton.setName("JButtonFDView"); + fdViewButton.setText("View..."); + fdViewButton.setEnabled(false); } - return ivjJButtonFDView; + return fdViewButton; } - /** - * Return the JPanel1 property value. - * - * @return javax.swing.JPanel - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ + private javax.swing.JPanel getJPanel1() { if (ivjJPanel1 == null) { - try { - org.vcell.util.gui.TitledBorderBean ivjLocalBorder; - ivjLocalBorder = new org.vcell.util.gui.TitledBorderBean(); - ivjLocalBorder.setTitleFont(new java.awt.Font("Arial", 1, 14)); - ivjLocalBorder.setTitle("Create New Field Data"); - ivjJPanel1 = new javax.swing.JPanel(); - ivjJPanel1.setName("JPanel1"); - ivjJPanel1.setBorder(ivjLocalBorder); - final java.awt.GridBagLayout gridBagLayout = new java.awt.GridBagLayout(); - gridBagLayout.rowHeights = new int[]{0, 0, 7}; - ivjJPanel1.setLayout(gridBagLayout); - - java.awt.GridBagConstraints constraintsJButtonFDFromFile = new java.awt.GridBagConstraints(); - constraintsJButtonFDFromFile.gridx = 1; - constraintsJButtonFDFromFile.gridy = 1; - constraintsJButtonFDFromFile.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDFromFile.weightx = 1.0; - constraintsJButtonFDFromFile.insets = new java.awt.Insets(4, 4, 4, 4); - getJPanel1().add(getJButtonFDCreate(), constraintsJButtonFDFromFile); - - java.awt.GridBagConstraints constraintsJButtonFDFromSim = new java.awt.GridBagConstraints(); - constraintsJButtonFDFromSim.gridx = 2; - constraintsJButtonFDFromSim.gridy = 1; - constraintsJButtonFDFromSim.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDFromSim.weightx = 1.0; - constraintsJButtonFDFromSim.insets = new java.awt.Insets(4, 4, 4, 4); - getJPanel1().add(getCreateJComboBox(), constraintsJButtonFDFromSim); - - // user code begin {1} - // user code end - } catch (java.lang.Throwable ivjExc) { - // user code begin {2} - // user code end - handleException(ivjExc); - } + org.vcell.util.gui.TitledBorderBean ivjLocalBorder; + ivjLocalBorder = new org.vcell.util.gui.TitledBorderBean(); + ivjLocalBorder.setTitleFont(new java.awt.Font("Arial", 1, 14)); + ivjLocalBorder.setTitle("Create New Field Data"); + ivjJPanel1 = new javax.swing.JPanel(); + ivjJPanel1.setName("JPanel1"); + ivjJPanel1.setBorder(ivjLocalBorder); + final java.awt.GridBagLayout gridBagLayout = new java.awt.GridBagLayout(); + gridBagLayout.rowHeights = new int[]{0, 0, 7}; + ivjJPanel1.setLayout(gridBagLayout); + + java.awt.GridBagConstraints constraintsJButtonFDFromFile = new java.awt.GridBagConstraints(); + constraintsJButtonFDFromFile.gridx = 1; + constraintsJButtonFDFromFile.gridy = 1; + constraintsJButtonFDFromFile.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDFromFile.weightx = 1.0; + constraintsJButtonFDFromFile.insets = new java.awt.Insets(4, 4, 4, 4); + getJPanel1().add(getJButtonFDCreate(), constraintsJButtonFDFromFile); + + java.awt.GridBagConstraints constraintsJButtonFDFromSim = new java.awt.GridBagConstraints(); + constraintsJButtonFDFromSim.gridx = 2; + constraintsJButtonFDFromSim.gridy = 1; + constraintsJButtonFDFromSim.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDFromSim.weightx = 1.0; + constraintsJButtonFDFromSim.insets = new java.awt.Insets(4, 4, 4, 4); + getJPanel1().add(getCreateJComboBox(), constraintsJButtonFDFromSim); } return ivjJPanel1; } - /** - * Return the JPanel2 property value. - * - * @return javax.swing.JPanel - */ - /* WARNING: THIS METHOD WILL BE REGENERATED. */ private javax.swing.JPanel getNormalTopPanel() { if (normalTopPanel == null) { - try { - GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); - gridBagConstraints4.gridx = 2; - gridBagConstraints4.gridy = 1; - GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); - gridBagConstraints21.gridx = 2; - gridBagConstraints21.gridy = 0; - normalTopPanel = new javax.swing.JPanel(); - normalTopPanel.setName("normalTopPanel"); - normalTopPanel.setLayout(new java.awt.GridBagLayout()); - - java.awt.GridBagConstraints constraintsJPanel1 = new java.awt.GridBagConstraints(); - constraintsJPanel1.gridx = 0; - constraintsJPanel1.gridy = 0; - constraintsJPanel1.gridheight = 2; - constraintsJPanel1.fill = java.awt.GridBagConstraints.BOTH; - constraintsJPanel1.insets = new java.awt.Insets(4, 4, 4, 4); - getNormalTopPanel().add(getJPanel1(), constraintsJPanel1); - - java.awt.GridBagConstraints constraintsJButtonFDDelete = new java.awt.GridBagConstraints(); - constraintsJButtonFDDelete.gridx = 1; - constraintsJButtonFDDelete.gridy = 0; - constraintsJButtonFDDelete.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDDelete.weightx = 0.0; - constraintsJButtonFDDelete.insets = new java.awt.Insets(4, 4, 4, 4); - java.awt.GridBagConstraints constraintsJButtonFDView = new java.awt.GridBagConstraints(); - constraintsJButtonFDView.gridx = 1; - constraintsJButtonFDView.gridy = 1; - constraintsJButtonFDView.gridwidth = 1; - constraintsJButtonFDView.fill = java.awt.GridBagConstraints.HORIZONTAL; - constraintsJButtonFDView.insets = new java.awt.Insets(4, 4, 4, 4); - normalTopPanel.add(getJButtonFDDelete(), constraintsJButtonFDDelete); - normalTopPanel.add(getJButtonFDView(), constraintsJButtonFDView); - normalTopPanel.add(getJPanel(), gridBagConstraints21); - normalTopPanel.add(getJPanel12(), gridBagConstraints4); - } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); - } + GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); + gridBagConstraints4.gridx = 2; + gridBagConstraints4.gridy = 1; + GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); + gridBagConstraints21.gridx = 2; + gridBagConstraints21.gridy = 0; + normalTopPanel = new javax.swing.JPanel(); + normalTopPanel.setName("normalTopPanel"); + normalTopPanel.setLayout(new java.awt.GridBagLayout()); + + java.awt.GridBagConstraints constraintsJPanel1 = new java.awt.GridBagConstraints(); + constraintsJPanel1.gridx = 0; + constraintsJPanel1.gridy = 0; + constraintsJPanel1.gridheight = 2; + constraintsJPanel1.fill = java.awt.GridBagConstraints.BOTH; + constraintsJPanel1.insets = new java.awt.Insets(4, 4, 4, 4); + getNormalTopPanel().add(getJPanel1(), constraintsJPanel1); + + java.awt.GridBagConstraints constraintsJButtonFDDelete = new java.awt.GridBagConstraints(); + constraintsJButtonFDDelete.gridx = 1; + constraintsJButtonFDDelete.gridy = 0; + constraintsJButtonFDDelete.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDDelete.weightx = 0.0; + constraintsJButtonFDDelete.insets = new java.awt.Insets(4, 4, 4, 4); + java.awt.GridBagConstraints constraintsJButtonFDView = new java.awt.GridBagConstraints(); + constraintsJButtonFDView.gridx = 1; + constraintsJButtonFDView.gridy = 1; + constraintsJButtonFDView.gridwidth = 1; + constraintsJButtonFDView.fill = java.awt.GridBagConstraints.HORIZONTAL; + constraintsJButtonFDView.insets = new java.awt.Insets(4, 4, 4, 4); + normalTopPanel.add(getJButtonFDDelete(), constraintsJButtonFDDelete); + normalTopPanel.add(getJButtonFDView(), constraintsJButtonFDView); + normalTopPanel.add(getJPanel(), gridBagConstraints21); + normalTopPanel.add(getJPanel12(), gridBagConstraints4); } return normalTopPanel; } @@ -769,9 +475,9 @@ private javax.swing.JPanel getNormalTopPanel() { public static final int DISPLAY_DATASYMBOLS = 1; private int displayMode = DISPLAY_NORMAL; private JPanel dataSymbolsJPanel = null; - private JButton dsAnnotButton = new JButton(); - private JButton dsViewButton = new JButton(); - private JButton dsDataSymbolButton = new JButton(); + private final JButton dsAnnotButton = new JButton(); + private final JButton dsViewButton = new JButton(); + private final JButton dsDataSymbolButton = new JButton(); public int getDisplayMode() { return displayMode; @@ -796,7 +502,7 @@ private void setDisplayMode(int newDisplayMode) { dsViewButton.setText("View..."); dsViewButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - jButtonFDView_ActionPerformed(e); + viewFieldData(e); } }); dsViewButton.setEnabled(false); @@ -812,7 +518,7 @@ public void actionPerformed(ActionEvent e) { dsDataSymbolButton.setText("Create Data Symbol..."); dsDataSymbolButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - jButtonFDCopyRef_ActionPerformed(e); + fdCopyRef(e); } }); dsDataSymbolButton.setEnabled(false); @@ -853,13 +559,9 @@ public void setCreateDataSymbolCallBack(FieldDataWindowManager.DataSymbolCallBac private javax.swing.JScrollPane getMainScrollPanel() { if (ivjJScrollPane1 == null) { - try { - ivjJScrollPane1 = new javax.swing.JScrollPane(); - ivjJScrollPane1.setName("JScrollPane1"); - getMainScrollPanel().setViewportView(getFieldDataTree()); - } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); - } + ivjJScrollPane1 = new javax.swing.JScrollPane(); + ivjJScrollPane1.setName("JScrollPane1"); + getMainScrollPanel().setViewportView(getFieldDataTree()); } return ivjJScrollPane1; } @@ -871,7 +573,6 @@ private javax.swing.JTree getFieldDataTree() { ivjJTree1.setName("JTree1"); ivjJTree1.setBounds(0, 0, 516, 346); } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); ivjJTree1.addMouseListener(new java.awt.event.MouseAdapter() { public void mousePressed(MouseEvent e) { maybeShowPopup(e); @@ -893,54 +594,6 @@ private void maybeShowPopup(MouseEvent e) { return ivjJTree1; } - private void handleException(java.lang.Throwable exception) { - - /* Uncomment the following lines to print uncaught exceptions to stdout */ - System.out.println("--------- UNCAUGHT EXCEPTION ---------"); - exception.printStackTrace(System.out); - } - - - private void initConnections() throws java.lang.Exception { - getFieldDataTree().addTreeSelectionListener(ivjEventHandler); - getFieldDataTree().addTreeExpansionListener(ivjEventHandler); - getJButtonFDDelete().addActionListener(ivjEventHandler); - getJButtonFDCopyRef().addActionListener(ivjEventHandler); - getJButtonFDCreate().addActionListener(ivjEventHandler); - getJButtonFDView().addActionListener(ivjEventHandler); - } - - - private void initialize() { - try { - // user code begin {1} - // user code end - setName("FieldDataGUIPanel"); - setLayout(new java.awt.GridBagLayout()); - setSize(676, 430); - - java.awt.GridBagConstraints gbc_normalTopPanel = new java.awt.GridBagConstraints(); - gbc_normalTopPanel.gridx = 0; - gbc_normalTopPanel.gridy = 0; - gbc_normalTopPanel.fill = java.awt.GridBagConstraints.BOTH; - gbc_normalTopPanel.insets = new java.awt.Insets(4, 4, 4, 4); - add(getNormalTopPanel(), gbc_normalTopPanel); - - java.awt.GridBagConstraints constraintsJScrollPane1 = new java.awt.GridBagConstraints(); - constraintsJScrollPane1.gridx = 0; - constraintsJScrollPane1.gridy = 1; - constraintsJScrollPane1.fill = java.awt.GridBagConstraints.BOTH; - constraintsJScrollPane1.weightx = 1.0; - constraintsJScrollPane1.weighty = 1.0; - constraintsJScrollPane1.insets = new java.awt.Insets(4, 4, 4, 4); - add(getMainScrollPanel(), constraintsJScrollPane1); - initConnections(); - connEtoC1(); - } catch (java.lang.Throwable ivjExc) { - handleException(ivjExc); - } - } - public boolean isInitialized() { DefaultMutableTreeNode rootNode = @@ -952,7 +605,7 @@ public boolean isInitialized() { } - private void jTree1_ValueChanged(javax.swing.event.TreeSelectionEvent treeSelectionEvent) { + private void treeValueChanged(javax.swing.event.TreeSelectionEvent treeSelectionEvent) { getJButtonFDDelete().setEnabled(false); getJButtonFDView().setEnabled(false); dsViewButton.setEnabled(false); @@ -981,7 +634,7 @@ private void jTree1_ValueChanged(javax.swing.event.TreeSelectionEvent treeSelect } } - private void jButtonFDFromSim_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + private void fdFromSim(java.awt.event.ActionEvent actionEvent) { try { final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); @@ -1047,7 +700,7 @@ public void run(Hashtable hashTable) throws Exception { } } - private void jButtonFDView_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + private void viewFieldData(java.awt.event.ActionEvent actionEvent) { if (fieldDataWindowManager == null) { System.out.println("No FieldDataViewManager available for View action"); return; @@ -1062,18 +715,10 @@ private void jButtonFDView_ActionPerformed(java.awt.event.ActionEvent actionEven } } - - private void jButtonFDFromFile_ActionPerformed(java.awt.event.ActionEvent actionEvent) { - Hashtable hash = new Hashtable(); - - AsynchClientTask[] tasks = fdFromFile(); - ClientTaskDispatcher.dispatch(this, hash, tasks, false, true, null); - - } - String IMAGE_FILE_KEY = "imageFile"; - private AsynchClientTask[] fdFromFile() { + // Add New Data is called from within this function. + public void fdFromFile() { final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); AsynchClientTask[] addTasks = addNewExternalData(this, this, false); AsynchClientTask[] taskArray = new AsynchClientTask[2 + addTasks.length]; @@ -1090,44 +735,27 @@ public void run(Hashtable hashTable) throws Exception { } } }; - taskArray[1] = new AsynchClientTask("Import image", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { + taskArray[1] = new AsynchClientTask("Generate field data from file", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) { public void run(Hashtable hashTable) throws Exception { - FieldDataFileOperationSpec fdos = null; - String initFDName = null; - - FieldDataFileOperationSpec argfdos = (FieldDataFileOperationSpec) hashTable.get("argfdos"); - String arginitFDName = (String) hashTable.get("arginitFDName"); - if (argfdos == null) { - File imageFile = (File) hashTable.get(IMAGE_FILE_KEY); - if (imageFile == null) { - return; - } - initFDName = imageFile.getName(); - if (initFDName.indexOf(".vfrap") > -1) { - } else //not a .vfrap file - { - try { - fdos = ClientRequestManager.createFDOSFromImageFile(imageFile, false, null); - } catch (DataFormatException ex) { - throw new Exception("Cannot read image " + imageFile.getAbsolutePath() + "\n" + ex.getMessage()); - } - } + FieldDataFileOperationSpec generatedFieldData ; + File imageFile = (File) hashTable.get(IMAGE_FILE_KEY); + if (imageFile == null || imageFile.getName().contains(".vfrap")){ + return; } else { - fdos = argfdos; - initFDName = arginitFDName; + generatedFieldData = FieldDataFileConversion.createFDOSFromImageFile(imageFile, false, null); } - fdos.owner = clientRequestManager.getDocumentManager().getUser(); - fdos.opType = FieldDataFileOperationSpec.FDOS_ADD; - hashTable.put("fdos", fdos); - hashTable.put("initFDName", initFDName); - //addNewExternalData(clientRequestManager, fdos, initFDName, false); + generatedFieldData.owner = clientRequestManager.getDocumentManager().getUser(); + generatedFieldData.opType = FieldDataFileOperationSpec.FDOS_ADD; + hashTable.put("fdos", generatedFieldData); + hashTable.put("initFDName", imageFile.getName()); } }; - return taskArray; + Hashtable hash = new Hashtable<>(); + ClientTaskDispatcher.dispatch(this, hash, taskArray, false, true, null); } - private void jButtonFDDelete_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + private void fdDelete(java.awt.event.ActionEvent actionEvent) { final RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); @@ -1233,7 +861,7 @@ private SelectedTimes selectTimeFromNode(DefaultMutableTreeNode mainNode) { return new SelectedTimes(new double[]{0.0}, 0); } - private void jButtonFDCopyRef_ActionPerformed(java.awt.event.ActionEvent actionEvent) { + private void fdCopyRef(java.awt.event.ActionEvent actionEvent) { if (actionEvent.getSource() == getJButtonCreateGeom()) { DocumentWindow.showGeometryCreationWarning(FieldDataGUIPanel.this); return; @@ -1268,7 +896,7 @@ private void jButtonFDCopyRef_ActionPerformed(java.awt.event.ActionEvent actionE } - private void jTree1_TreeExpanded(final javax.swing.event.TreeExpansionEvent treeExpansionEvent) { + private void treeExpanded(final javax.swing.event.TreeExpansionEvent treeExpansionEvent) { if (fieldDataWindowManager == null) { return; } @@ -1457,66 +1085,71 @@ public void checkFieldDataName(String fieldDataName) throws Exception { } } + // creation and saving of file is separate act from saving file info into DB + public static AsynchClientTask[] addNewExternalData(final Component requester, final FieldDataGUIPanel fieldDataGUIPanel, final boolean isFromSimulation) { final RequestManager clientRequestManager = fieldDataGUIPanel.fieldDataWindowManager.getLocalRequestManager(); - AsynchClientTask task1 = new AsynchClientTask("creating field data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { + AsynchClientTask task1 = new AsynchClientTask("review field data", AsynchClientTask.TASKTYPE_SWING_BLOCKING) { @Override public void run(Hashtable hashTable) throws Exception { - //Check if this is ImageJ op, if so, this task unnecessary - if (hashTable.get(USER_DEFINED_FDOS) != null && hashTable.get(FIELD_NAME) != null) { - return; - } //Allow user to review/change info about fielddata - FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec) hashTable.get("fdos"); + FieldDataFileOperationSpec generatedFieldDataOpSpec = (FieldDataFileOperationSpec) hashTable.get("fdos"); String initialExtDataName = (String) hashTable.get("initFDName"); - fdos.specEDI = null; + generatedFieldDataOpSpec.specEDI = null; - FieldDataInfoPanel fdip = new FieldDataInfoPanel(); - fdip.setSimulationMode(isFromSimulation); - fdip.initISize(fdos.isize); - fdip.initIOrigin(fdos.origin); - fdip.initIExtent(fdos.extent); - fdip.initTimes(fdos.times); - fdip.initNames(TokenMangler.fixTokenStrict(initialExtDataName), fdos.varNames); - fdip.setAnnotation(fdos.annotation); + FieldDataInfoPanel fieldDataInfoPanel = new FieldDataInfoPanel(); + fieldDataInfoPanel.setSimulationMode(isFromSimulation); + fieldDataInfoPanel.initISize(generatedFieldDataOpSpec.isize); + fieldDataInfoPanel.initIOrigin(generatedFieldDataOpSpec.origin); + fieldDataInfoPanel.initIExtent(generatedFieldDataOpSpec.extent); + fieldDataInfoPanel.initTimes(generatedFieldDataOpSpec.times); + fieldDataInfoPanel.initNames(TokenMangler.fixTokenStrict(initialExtDataName), generatedFieldDataOpSpec.varNames); + fieldDataInfoPanel.setAnnotation(generatedFieldDataOpSpec.annotation); FieldDataFileOperationSpec userDefinedFDOS = new FieldDataFileOperationSpec(); while (true) { - int choice = PopupGenerator.showComponentOKCancelDialog(requester, fdip, "Create new field data"); + int choice = PopupGenerator.showComponentOKCancelDialog(requester, fieldDataInfoPanel, "Create new field data"); if (choice == JOptionPane.OK_OPTION) { //Check values try { - userDefinedFDOS.extent = fdip.getExtent(); + userDefinedFDOS.extent = fieldDataInfoPanel.getExtent(); } catch (Exception e) { PopupGenerator.showErrorDialog(requester, "Problem with Extent values. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); continue; } try { - userDefinedFDOS.origin = fdip.getOrigin(); + userDefinedFDOS.origin = fieldDataInfoPanel.getOrigin(); } catch (Exception e) { PopupGenerator.showErrorDialog(requester, "Problem with Origin values. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); continue; } try { - userDefinedFDOS.varNames = fdip.getVariableNames(); + userDefinedFDOS.varNames = fieldDataInfoPanel.getVariableNames(); } catch (Exception e) { PopupGenerator.showErrorDialog(requester, "Problem with Variable names. Please re-enter.\n" + e.getMessage() + "\nTry Again.", e); continue; } - userDefinedFDOS.annotation = fdip.getAnnotation(); - userDefinedFDOS.times = fdip.getTimes(); + userDefinedFDOS.annotation = fieldDataInfoPanel.getAnnotation(); + userDefinedFDOS.times = fieldDataInfoPanel.getTimes(); try { - fieldDataGUIPanel.checkFieldDataName(fdip.getFieldName()); + fieldDataGUIPanel.checkFieldDataName(fieldDataInfoPanel.getFieldName()); } catch (Exception e) { PopupGenerator.showErrorDialog(requester, "Error saving Field Data Name to Database. Try again.\n" + e.getMessage(), e); continue; } + if (!isFromSimulation){ + generatedFieldDataOpSpec.extent = userDefinedFDOS.extent; + generatedFieldDataOpSpec.origin = userDefinedFDOS.origin; + generatedFieldDataOpSpec.varNames = userDefinedFDOS.varNames; + generatedFieldDataOpSpec.times = userDefinedFDOS.times; + } + generatedFieldDataOpSpec.annotation = userDefinedFDOS.annotation; hashTable.put(USER_DEFINED_FDOS, userDefinedFDOS); - hashTable.put(FIELD_NAME, fdip.getFieldName()); + hashTable.put(FIELD_NAME, fieldDataInfoPanel.getFieldName()); break; } else { throw UserCancelException.CANCEL_GENERIC; @@ -1530,41 +1163,23 @@ public void run(Hashtable hashTable) throws Exception { public void run(Hashtable hashTable) throws Exception { //Add to Server Disk //save Database - FieldDataFileOperationSpec tempFDOS = (FieldDataFileOperationSpec) hashTable.get(USER_DEFINED_FDOS); String fieldName = (String) hashTable.get(FIELD_NAME); - - FieldDataFileOperationSpec fdos = (FieldDataFileOperationSpec) hashTable.get("fdos"); + FieldDataFileOperationSpec generatedFieldDataOpSpec + = (FieldDataFileOperationSpec) hashTable.get("fdos"); DocumentManager documentManager = clientRequestManager.getDocumentManager(); - FieldDataDBOperationSpec newExtDataIDSpec = FieldDataDBOperationSpec.createSaveNewExtDataIDSpec(documentManager.getUser(), fieldName, tempFDOS.annotation); - tempFDOS.specEDI = documentManager.fieldDataDBOperation(newExtDataIDSpec).extDataID; - fdos.specEDI = tempFDOS.specEDI; - fdos.annotation = tempFDOS.annotation; - + generatedFieldDataOpSpec.fieldDataName = fieldName; try { - if (!isFromSimulation) { - fdos.extent = tempFDOS.extent; - fdos.origin = tempFDOS.origin; - fdos.varNames = tempFDOS.varNames; - fdos.times = tempFDOS.times; - // - //Subvolumes and Regions NOT implemented now - // - fdos.cartesianMesh = CartesianMesh.createSimpleCartesianMesh(fdos.origin, fdos.extent, fdos.isize, - new RegionImage(new VCImageUncompressed(null, new byte[fdos.isize.getXYZ()],//empty regions - fdos.extent, fdos.isize.getX(), fdos.isize.getY(), fdos.isize.getZ()), - 0, null, null, RegionImage.NO_SMOOTHING)); - } - //Add to Server Disk - documentManager.fieldDataFileOperation(fdos); + FieldDataFileOperationResults results = documentManager.fieldDataFileOperation(generatedFieldDataOpSpec); + generatedFieldDataOpSpec.specEDI = results.externalDataIdentifier; } catch (Exception e) { try { //try to cleanup new ExtDataID - documentManager.fieldDataDBOperation(FieldDataDBOperationSpec.createDeleteExtDataIDSpec(fdos.specEDI)); + documentManager.fieldDataDBOperation(FieldDataDBOperationSpec.createDeleteExtDataIDSpec(generatedFieldDataOpSpec.specEDI)); } catch (Exception e2) { //ignore } - fdos.specEDI = null; + generatedFieldDataOpSpec.specEDI = null; throw e; } } @@ -1663,11 +1278,11 @@ private JPanel getJPanel() { * @return javax.swing.JButton */ private JButton getJButtonCreateGeom() { - if (jButtonCreateGeom == null) { - jButtonCreateGeom = new JButton(); - jButtonCreateGeom.setEnabled(false); - jButtonCreateGeom.setText("Create Geom"); - jButtonCreateGeom.addActionListener(new java.awt.event.ActionListener() { + if (createGeomButton == null) { + createGeomButton = new JButton(); + createGeomButton.setEnabled(false); + createGeomButton.setText("Create Geom"); + createGeomButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { try { RequestManager clientRequestManager = fieldDataWindowManager.getLocalRequestManager(); @@ -1745,7 +1360,7 @@ public void run(Hashtable hashTable) throws Exception { } }); } - return jButtonCreateGeom; + return createGeomButton; } /** @@ -1794,13 +1409,13 @@ public void actionPerformed(java.awt.event.ActionEvent e) { }; private JButton getJButtonViewAnnot() { - if (jButtonViewAnnot == null) { - jButtonViewAnnot = new JButton(); - jButtonViewAnnot.setText("View Annot..."); - jButtonViewAnnot.setEnabled(false); - jButtonViewAnnot.addActionListener(viewAnnotAction); + if (viewAnnotButton == null) { + viewAnnotButton = new JButton(); + viewAnnotButton.setText("View Annot..."); + viewAnnotButton.setEnabled(false); + viewAnnotButton.addActionListener(viewAnnotAction); } - return jButtonViewAnnot; + return viewAnnotButton; } } From 4a4bdb6a4b25eecdca5c5b5f026d1f02efed72a6 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Tue, 17 Dec 2024 10:31:38 -0500 Subject: [PATCH 07/37] Client Communicate with Rest Endpoint for Adding Field Data --- .../org/vcell/api/client/VCellApiClient.java | 5 +++ .../io/FieldDataFileOperationResults.java | 5 ++- .../field/io/FieldDataFileOperationSpec.java | 1 + .../main/java/cbit/vcell/math/Variable.java | 2 +- .../LocalDataSetControllerMessaging.java | 45 +++++++++++++++---- .../client/LocalVCellConnectionMessaging.java | 7 ++- .../RemoteProxyVCellConnectionFactory.java | 4 +- .../cbit/vcell/simdata/DataIdentifier.java | 2 +- .../util/document/ExternalDataIdentifier.java | 8 ++++ .../org/vcell/util/document/KeyValue.java | 2 +- .../java/org/vcell/util/document/User.java | 4 ++ vcell-util/pom.xml | 5 +++ 12 files changed, 75 insertions(+), 15 deletions(-) diff --git a/vcell-apiclient/src/main/java/org/vcell/api/client/VCellApiClient.java b/vcell-apiclient/src/main/java/org/vcell/api/client/VCellApiClient.java index 1da6323e79..6ca079a208 100644 --- a/vcell-apiclient/src/main/java/org/vcell/api/client/VCellApiClient.java +++ b/vcell-apiclient/src/main/java/org/vcell/api/client/VCellApiClient.java @@ -33,6 +33,7 @@ import org.vcell.restclient.ApiClient; import org.vcell.restclient.ApiException; import org.vcell.restclient.CustomApiClientCode; +import org.vcell.restclient.api.FieldDataResourceApi; import org.vcell.restclient.api.UsersResourceApi; import org.vcell.restclient.auth.InteractiveLogin; import org.vcell.restclient.model.AccesTokenRepresentationRecord; @@ -514,6 +515,10 @@ public void logOut(){ } } + public FieldDataResourceApi getFieldDataApi(){ + return new FieldDataResourceApi(apiClient); + } + public String getVCellUserNameFromAuth0Mapping() throws ApiException { try { UsersResourceApi usersResourceApi = new UsersResourceApi(apiClient); diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java index 68e9dfa90b..810d394f5d 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java @@ -14,6 +14,7 @@ import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; +import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; import cbit.vcell.simdata.DataIdentifier; @@ -54,6 +55,7 @@ public static FieldDataReferenceInfo dtoToFielddataFileOperationResults(org.vcel public DataIdentifier[] dataIdentifierArr; + public ExternalDataIdentifier externalDataIdentifier; public ISize iSize; public Origin origin; public Extent extent; @@ -67,7 +69,8 @@ public static FieldDataFileOperationResults dtoToFieldDataFileOperationResults(o fieldDataFileOperationResults.origin = Origin.dtoToOrigin(dto.getOrigin()); fieldDataFileOperationResults.dataIdentifierArr = dto.getDataIdentifierArr().stream().map(DataIdentifier::dtoToDataIdentifier).toArray(DataIdentifier[]::new); fieldDataFileOperationResults.times = dto.getTimes().stream().mapToDouble(Double::doubleValue).toArray(); - fieldDataFileOperationResults.dependantFunctionInfo = dto.getDependantFunctionInfo().stream().map(FieldDataReferenceInfo::dtoToFielddataFileOperationResults).toArray(FieldDataReferenceInfo[]::new); + fieldDataFileOperationResults.dependantFunctionInfo = dto.getDependantFunctionInfo() == null ? null : dto.getDependantFunctionInfo().stream().map(FieldDataReferenceInfo::dtoToFielddataFileOperationResults).toArray(FieldDataReferenceInfo[]::new); + fieldDataFileOperationResults.externalDataIdentifier = ExternalDataIdentifier.dtoToExternalDataIdentifier(dto.getExternalDataIdentifier()); return fieldDataFileOperationResults; } diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java index 3d51ffa802..4dd83ee254 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java @@ -46,6 +46,7 @@ public class FieldDataFileOperationSpec implements java.io.Serializable{ public int sourceSimParamScanJobIndex = -1; public KeyValue sourceSimDataKey; public User sourceOwner; + public String fieldDataName; public static final int FDOS_ADD = 0; public static final int FDOS_DELETE = 1; diff --git a/vcell-core/src/main/java/cbit/vcell/math/Variable.java b/vcell-core/src/main/java/cbit/vcell/math/Variable.java index b1b489e51f..45d7e3f7d7 100644 --- a/vcell-core/src/main/java/cbit/vcell/math/Variable.java +++ b/vcell-core/src/main/java/cbit/vcell/math/Variable.java @@ -47,7 +47,7 @@ public static class Domain implements Matchable, Serializable { private String name = null; public static Domain dtoToDomain(org.vcell.restclient.model.Domain dto){ - return new Domain(dto.getName()); + return dto != null ? new Domain(dto.getName()) : null; } public Domain(String argName){ diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java index ed7b315852..07e1e3ba34 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java @@ -12,8 +12,15 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.vcell.api.client.VCellApiClient; +import org.vcell.restclient.model.SaveFieldDataFromFile; +import org.vcell.restclient.model.VariableType; import org.vcell.solver.nfsim.NFSimMolecularConfigurations; import org.vcell.util.DataAccessException; +import org.vcell.util.Extent; +import org.vcell.util.ISize; +import org.vcell.util.Origin; +import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.UserLoginInfo; import org.vcell.util.document.VCDataIdentifier; import org.vcell.vis.io.VtuFileContainer; @@ -37,6 +44,12 @@ import cbit.vcell.simdata.SpatialSelection; import cbit.vcell.solvers.CartesianMesh; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + /** * This interface was generated by a SmartGuide. * @@ -44,12 +57,14 @@ public class LocalDataSetControllerMessaging implements DataSetController { private RpcDataServerProxy dataServerProxy = null; private static Logger lg = LogManager.getLogger(LocalDataSetControllerMessaging.class); + private final VCellApiClient vCellApiClient; /** * This method was created by a SmartGuide. */ -public LocalDataSetControllerMessaging (UserLoginInfo userLoginInfo, RpcSender rpcSender) { +public LocalDataSetControllerMessaging (UserLoginInfo userLoginInfo, RpcSender rpcSender, VCellApiClient vCellApiClient) { this.dataServerProxy = new RpcDataServerProxy(userLoginInfo, rpcSender); + this.vCellApiClient = vCellApiClient; } @@ -57,7 +72,26 @@ public LocalDataSetControllerMessaging (UserLoginInfo userLoginInfo, RpcSender r public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperationSpec fieldDataFileOperationSpec) throws DataAccessException { if (lg.isTraceEnabled()) lg.trace("LocalDataSetControllerMessaging.fieldDataFileOperationSpec(...)"); try { - return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); + if (fieldDataFileOperationSpec.opType != FieldDataFileOperationSpec.FDOS_ADD){ + return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); + } else { + List>> listVersion = Arrays.stream(fieldDataFileOperationSpec.shortSpecData) // Stream of short[][] + .map(twoDArray -> Arrays.stream(twoDArray) // Stream of short[] + .map(oneDArray -> { + List list = new ArrayList<>(); + for (short j : oneDArray) { + list.add((int) j); + } + return list; + }).collect(Collectors.toList())).collect(Collectors.toList()); + SaveFieldDataFromFile saveFieldDataFromFile = new SaveFieldDataFromFile(); + saveFieldDataFromFile.annotation(fieldDataFileOperationSpec.annotation); saveFieldDataFromFile.isize(ISize.iSizeToDTO(fieldDataFileOperationSpec.isize)); + saveFieldDataFromFile.extent(Extent.extentToDTO(fieldDataFileOperationSpec.extent)); saveFieldDataFromFile.origin(Origin.originToDTO(fieldDataFileOperationSpec.origin)); + saveFieldDataFromFile.times(Arrays.stream(fieldDataFileOperationSpec.times).boxed().toList()); saveFieldDataFromFile.setName(fieldDataFileOperationSpec.fieldDataName); + saveFieldDataFromFile.varNames(Arrays.stream(fieldDataFileOperationSpec.varNames).toList()); saveFieldDataFromFile.shortSpecData(listVersion); + org.vcell.restclient.model.FieldDataFileOperationResults results = vCellApiClient.getFieldDataApi().createNewFieldDataFromFile(saveFieldDataFromFile); + return FieldDataFileOperationResults.dtoToFieldDataFileOperationResults(results); + } } catch (DataAccessException e){ lg.error(e.getMessage(),e); throw e; @@ -108,7 +142,6 @@ public double[] getDataSetTimes(VCDataIdentifier vcdID) throws DataAccessExcepti /** * Insert the method's description here. * Creation date: (2/26/2004 1:05:01 PM) - * @param function cbit.vcell.math.Function * @exception org.vcell.util.DataAccessException The exception description. * @exception RemoteProxyException The exception description. */ @@ -191,7 +224,6 @@ public cbit.vcell.solver.ode.ODESimData getODEData(VCDataIdentifier vcdID) throw /** * This method was created by a SmartGuide. * @return double[] - * @param varName java.lang.String * @param time double * @throws RemoteProxyException */ @@ -252,9 +284,7 @@ public SimDataBlock getSimDataBlock(OutputContext outputContext,VCDataIdentifier /** * This method was created by a SmartGuide. * @return double[] - * @param varName java.lang.String - * @param index int - * @throws RemoteProxyException + * @throws RemoteProxyException */ public org.vcell.util.document.TimeSeriesJobResults getTimeSeriesValues(OutputContext outputContext,VCDataIdentifier vcdID,org.vcell.util.document.TimeSeriesJobSpec timeSeriesJobSpec) throws DataAccessException, RemoteProxyException { if (lg.isTraceEnabled()) lg.trace("LocalDataSetControllerMessaging.getTimeSeriesValues(vcdID=" + vcdID + ", " + timeSeriesJobSpec + ")"); @@ -272,7 +302,6 @@ public org.vcell.util.document.TimeSeriesJobResults getTimeSeriesValues(OutputCo /** * This method was created in VisualAge. - * @param simInfo cbit.vcell.solver.SimulationInfo * @exception org.vcell.util.DataAccessException The exception description. * @throws RemoteProxyException */ diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java index f059ded325..d98a2584e2 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java @@ -13,6 +13,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.vcell.api.client.VCellApiClient; import org.vcell.util.DataAccessException; import org.vcell.util.document.UserLoginInfo; @@ -42,10 +43,12 @@ public class LocalVCellConnectionMessaging implements VCellConnection { private UserLoginInfo userLoginInfo; private RpcSender rpcSender; + private final VCellApiClient vCellApiClient; - public LocalVCellConnectionMessaging(UserLoginInfo userLoginInfo, RpcSender rpcSender) { + public LocalVCellConnectionMessaging(UserLoginInfo userLoginInfo, RpcSender rpcSender, VCellApiClient vCellApiClient) { this.userLoginInfo = userLoginInfo; this.rpcSender = rpcSender; + this.vCellApiClient = vCellApiClient; } @@ -53,7 +56,7 @@ public LocalVCellConnectionMessaging(UserLoginInfo userLoginInfo, RpcSender rpcS public DataSetController getDataSetController() throws DataAccessException { if (lg.isTraceEnabled()) lg.trace("LocalVCellConnectionMessaging.getDataSetController()"); if (dataSetControllerMessaging == null) { - dataSetControllerMessaging = new LocalDataSetControllerMessaging(getUserLoginInfo(), rpcSender); + dataSetControllerMessaging = new LocalDataSetControllerMessaging(getUserLoginInfo(), rpcSender, vCellApiClient); } return dataSetControllerMessaging; } diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/RemoteProxyVCellConnectionFactory.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/RemoteProxyVCellConnectionFactory.java index d18ee6bd9a..d5e60b8131 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/RemoteProxyVCellConnectionFactory.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/RemoteProxyVCellConnectionFactory.java @@ -103,6 +103,8 @@ public Object sendRpcMessage(VCellQueue queue, VCRpcRequest vcRpcRequest, boolea return vcellApiClient.sendRpcMessage(rpcDestination,apiRpcRequest,returnRequired,timeoutMS,specialProperties,specialValues); } + + @Override public MessageEvent[] getMessageEvents() throws IOException { long previousTimestamp = lastProcessedEventTimestamp.get(); @@ -204,7 +206,7 @@ public VCellConnection createVCellConnection(UserLoginInfo userLoginInfo) { this.getVCellApiClient().getGuestLegacyToken() :this.getVCellApiClient().getLegacyToken(); userLoginInfo.setUser(new User(accessTokenRep.getUserId(), new KeyValue(accessTokenRep.getUserKey()))); - return new LocalVCellConnectionMessaging(userLoginInfo,rpcSender); + return new LocalVCellConnectionMessaging(userLoginInfo,rpcSender, vcellApiClient); } catch (ApiException apiException){ throw new RuntimeException(apiException); } diff --git a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java index 5a37aa73da..099d776941 100644 --- a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java +++ b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java @@ -30,7 +30,7 @@ public class DataIdentifier implements java.io.Serializable { public static DataIdentifier dtoToDataIdentifier(org.vcell.restclient.model.DataIdentifier dto) { return new DataIdentifier(dto.getName(), VariableType.dtoToVariableType(dto.getVariableType()), - Domain.dtoToDomain(dto.getDomain()), dto.getbFunction(), dto.getDisplayName()); + Domain.dtoToDomain(dto.getDomain()),dto.getbFunction() != null && dto.getbFunction(), dto.getDisplayName()); } diff --git a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java index de0ab1f18a..e789614f95 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java +++ b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java @@ -33,6 +33,14 @@ public static org.vcell.restclient.model.ExternalDataIdentifier externalDataIden return dto; } + public static ExternalDataIdentifier dtoToExternalDataIdentifier(org.vcell.restclient.model.ExternalDataIdentifier dto){ + ExternalDataIdentifier externalDataIdentifier = new ExternalDataIdentifier(); + externalDataIdentifier.key = KeyValue.dtoToKeyValue(dto.getDataKey()); + externalDataIdentifier.name = dto.getName(); + externalDataIdentifier.owner = User.dtoToUser(dto.getOwner()); + return externalDataIdentifier; + } + /** * FieldDataIdentifier constructor comment. */ diff --git a/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java b/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java index 193803007d..a786222e98 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java +++ b/vcell-core/src/main/java/org/vcell/util/document/KeyValue.java @@ -26,7 +26,7 @@ public static org.vcell.restclient.model.KeyValue keyValueToDTO(KeyValue kv) { return k; } public static KeyValue dtoToKeyValue(org.vcell.restclient.model.KeyValue dto){ - return new KeyValue(dto.getValue()); + return dto == null ? null : new KeyValue(dto.getValue()); } diff --git a/vcell-core/src/main/java/org/vcell/util/document/User.java b/vcell-core/src/main/java/org/vcell/util/document/User.java index 8f39acd2d3..e606795d63 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/User.java +++ b/vcell-core/src/main/java/org/vcell/util/document/User.java @@ -32,6 +32,10 @@ public static org.vcell.restclient.model.User userToDTO(User user) { return userDTO; } + public static User dtoToUser(org.vcell.restclient.model.User dto){ + return new User(dto.getUserName(), KeyValue.dtoToKeyValue(dto.getKey())); + } + public enum SPECIAL_CLAIM { admins/*special0*/, powerUsers/*special1*/, diff --git a/vcell-util/pom.xml b/vcell-util/pom.xml index 89da76b368..cfeddf24d9 100644 --- a/vcell-util/pom.xml +++ b/vcell-util/pom.xml @@ -140,5 +140,10 @@ jaxb-impl ${jaxb-impl.version} + + org.vcell + vcell-restclient + 0.0.1-SNAPSHOT + From 18aacaa2ae1aeb6cfa3b389c0ff4c57e2a9a72dd Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Tue, 17 Dec 2024 10:33:01 -0500 Subject: [PATCH 08/37] Server Side Add Field Data --- .../vcell/simdata/DataSetControllerImpl.java | 895 ++++++++---------- .../restq/handlers/FieldData/FieldDataDB.java | 73 +- .../handlers/FieldData/FieldDataResource.java | 69 +- 3 files changed, 548 insertions(+), 489 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/simdata/DataSetControllerImpl.java b/vcell-core/src/main/java/cbit/vcell/simdata/DataSetControllerImpl.java index a20e1fb7a7..81847edbc3 100644 --- a/vcell-core/src/main/java/cbit/vcell/simdata/DataSetControllerImpl.java +++ b/vcell-core/src/main/java/cbit/vcell/simdata/DataSetControllerImpl.java @@ -1180,541 +1180,470 @@ else if (dsi.getName().endsWith(OutsideVariable.OUTSIDE_VARIABLE_SUFFIX)) return new SimDataBlock(pdeDataInfo, data, variableType); } - - -public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperationSpec fieldDataFileOperationSpec) - throws ObjectNotFoundException{ - - if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_COPYSIM){ - Vector removeFilesIfErrorV = new Vector(); - try{ - int simJobIndex = fieldDataFileOperationSpec.sourceSimParamScanJobIndex; - //Determine style so file names can be constructed properly - VCSimulationDataIdentifier sourceSimDataID = +private FieldDataFileOperationResults fieldDataCopySim(FieldDataFileOperationSpec fieldDataFileOperationSpec){ + Vector removeFilesIfErrorV = new Vector(); + try{ + int simJobIndex = fieldDataFileOperationSpec.sourceSimParamScanJobIndex; + //Determine style so file names can be constructed properly + VCSimulationDataIdentifier sourceSimDataID = new VCSimulationDataIdentifier( new VCSimulationIdentifier( fieldDataFileOperationSpec.sourceSimDataKey, fieldDataFileOperationSpec.sourceOwner), simJobIndex); - - SimulationData simulationData = (SimulationData)getVCData(sourceSimDataID); - boolean isOldStyle = (simulationData.getResultsInfoObject() instanceof VCSimulationDataIdentifierOldStyle); - // - //log,mesh,zip,func - // - KeyValue origSimKey = fieldDataFileOperationSpec.sourceSimDataKey; - File meshFile_orig = simulationData.getMeshFile(false); - File funcFile_orig = simulationData.getFunctionsFile(false); - File subdomainFile_orig = simulationData.getSubdomainFile(); - File fdLogFile_orig = simulationData.getLogFile(); - File zipFile_orig = simulationData.getZipFile(false, 0); - boolean bCopySubdomainFile = subdomainFile_orig.exists(); - //Dont' check subdomainFile_orig - if(!(meshFile_orig.exists() && funcFile_orig.exists() && fdLogFile_orig.exists() && zipFile_orig.exists())){ - throw new RuntimeException("Couldn't find all of the files required to copy sim"); - } - - File userDir = getPrimaryUserDir(fieldDataFileOperationSpec.owner, true); - File meshFile_new = new File(userDir,SimulationData.createCanonicalMeshFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); - File funcFile_new = new File(userDir,SimulationData.createCanonicalFunctionsFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); - File subdomainFile_new = new File(userDir,SimulationData.createCanonicalSubdomainFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); - File fdLogFile_new = new File(userDir,SimulationData.createCanonicalSimLogFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); - File zipFile_new = new File(userDir,SimulationData.createCanonicalSimZipFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,0,false,false)); - if(meshFile_new.exists() || funcFile_new.exists() || fdLogFile_new.exists() || zipFile_new.exists() || (bCopySubdomainFile && subdomainFile_new.exists())){ - throw new RuntimeException("File names required for new Field Data already exist on server"); - } - - removeFilesIfErrorV.add(funcFile_new); - removeFilesIfErrorV.add(meshFile_new); - removeFilesIfErrorV.add(fdLogFile_new); - //Simple copy of mesh and funcfile because they do not have to be changed - FileUtils.copyFile(meshFile_orig, meshFile_new, false, false, 8*1024); - FileUtils.copyFile(funcFile_orig, funcFile_new, false, false, 8*1024); - if(bCopySubdomainFile){ - FileUtils.copyFile(subdomainFile_orig, subdomainFile_new, false, false, 8*1024); + + SimulationData simulationData = (SimulationData)getVCData(sourceSimDataID); + boolean isOldStyle = (simulationData.getResultsInfoObject() instanceof VCSimulationDataIdentifierOldStyle); + // + //log,mesh,zip,func + // + KeyValue origSimKey = fieldDataFileOperationSpec.sourceSimDataKey; + File meshFile_orig = simulationData.getMeshFile(false); + File funcFile_orig = simulationData.getFunctionsFile(false); + File subdomainFile_orig = simulationData.getSubdomainFile(); + File fdLogFile_orig = simulationData.getLogFile(); + File zipFile_orig = simulationData.getZipFile(false, 0); + boolean bCopySubdomainFile = subdomainFile_orig.exists(); + //Dont' check subdomainFile_orig + if(!(meshFile_orig.exists() && funcFile_orig.exists() && fdLogFile_orig.exists() && zipFile_orig.exists())){ + throw new RuntimeException("Couldn't find all of the files required to copy sim"); + } + + File userDir = getPrimaryUserDir(fieldDataFileOperationSpec.owner, true); + File meshFile_new = new File(userDir,SimulationData.createCanonicalMeshFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); + File funcFile_new = new File(userDir,SimulationData.createCanonicalFunctionsFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); + File subdomainFile_new = new File(userDir,SimulationData.createCanonicalSubdomainFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); + File fdLogFile_new = new File(userDir,SimulationData.createCanonicalSimLogFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,false)); + File zipFile_new = new File(userDir,SimulationData.createCanonicalSimZipFileName(fieldDataFileOperationSpec.specEDI.getKey(),0,0,false,false)); + if(meshFile_new.exists() || funcFile_new.exists() || fdLogFile_new.exists() || zipFile_new.exists() || (bCopySubdomainFile && subdomainFile_new.exists())){ + throw new RuntimeException("File names required for new Field Data already exist on server"); + } + + removeFilesIfErrorV.add(funcFile_new); + removeFilesIfErrorV.add(meshFile_new); + removeFilesIfErrorV.add(fdLogFile_new); + //Simple copy of mesh and funcfile because they do not have to be changed + FileUtils.copyFile(meshFile_orig, meshFile_new, false, false, 8*1024); + FileUtils.copyFile(funcFile_orig, funcFile_new, false, false, 8*1024); + if(bCopySubdomainFile){ + FileUtils.copyFile(subdomainFile_orig, subdomainFile_new, false, false, 8*1024); + } + + //Copy Log file and replace original simID with ExternalDataIdentifier id + BufferedWriter writer = null; + try{ + String origLog = FileUtils.readFileToString(fdLogFile_orig); + String newLogStr; + String replace_new = + SimulationData.createSimIDWithJobIndex( + fieldDataFileOperationSpec.specEDI.getKey(), + FieldDataFileOperationSpec.JOBINDEX_DEFAULT, false); + if(isOldStyle){ + String replace_orig = + SimulationData.createSimIDWithJobIndex(origSimKey, 0, true); + newLogStr = origLog.replaceAll(replace_orig, replace_new); + }else{ + String replace_orig = + SimulationData.createSimIDWithJobIndex( + origSimKey, + fieldDataFileOperationSpec.sourceSimParamScanJobIndex, false); + newLogStr= origLog.replaceAll(replace_orig, replace_new); + } + writer = new BufferedWriter(new FileWriter(fdLogFile_new)); + writer.write(newLogStr); + writer.close(); + }finally{ + try{if(writer != null){writer.close();}}catch(Exception e){/*ignore*/}; + } + + // + //Copy zip file and rename entries + // + int zipIndex = 0; + while(true){//Loop because there might be more than 1 zip file for large datasets + zipFile_orig = simulationData.getZipFile(false, zipIndex); + if(!zipFile_orig.exists()){ + //done + break; } - - //Copy Log file and replace original simID with ExternalDataIdentifier id - BufferedWriter writer = null; - try{ - String origLog = FileUtils.readFileToString(fdLogFile_orig); - String newLogStr; - String replace_new = - SimulationData.createSimIDWithJobIndex( - fieldDataFileOperationSpec.specEDI.getKey(), - FieldDataFileOperationSpec.JOBINDEX_DEFAULT, false); - if(isOldStyle){ - String replace_orig = - SimulationData.createSimIDWithJobIndex(origSimKey, 0, true); - newLogStr = origLog.replaceAll(replace_orig, replace_new); - }else{ - String replace_orig = - SimulationData.createSimIDWithJobIndex( - origSimKey, - fieldDataFileOperationSpec.sourceSimParamScanJobIndex, false); - newLogStr= origLog.replaceAll(replace_orig, replace_new); - } - writer = new BufferedWriter(new FileWriter(fdLogFile_new)); - writer.write(newLogStr); - writer.close(); - }finally{ - try{if(writer != null){writer.close();}}catch(Exception e){/*ignore*/}; - } - - // - //Copy zip file and rename entries - // - int zipIndex = 0; - while(true){//Loop because there might be more than 1 zip file for large datasets - zipFile_orig = simulationData.getZipFile(false, zipIndex); - if(!zipFile_orig.exists()){ - //done - break; - } - zipFile_new = new File(userDir,SimulationData.createCanonicalSimZipFileName(fieldDataFileOperationSpec.specEDI.getKey(),zipIndex,0,false,false)); - if(zipFile_new.exists()){ - throw new DataAccessException("new zipfile name "+zipFile_new.getAbsolutePath()+" already exists"); - } - removeFilesIfErrorV.add(zipFile_new); - - ZipFile inZipFile = null; - InputStream zis = null; - ZipOutputStream zos = null; - try{ - inZipFile = new ZipFile(zipFile_orig);; - zos = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(zipFile_new))); - Enumeration zipEntryEnum = inZipFile.getEntries(); - while(zipEntryEnum.hasMoreElements()){ - ZipEntry zeIN = zipEntryEnum.nextElement(); - byte[] zdataIN = new byte[(int)zeIN.getSize()]; - int num = 0; - int numTotal = 0; - zis = new BufferedInputStream(inZipFile.getInputStream((ZipArchiveEntry) zeIN)); - //long startTime = System.currentTimeMillis(); - while((num = zis.read(zdataIN, numTotal, zdataIN.length-numTotal)) != -1 && numTotal != zdataIN.length){ - numTotal+= num; - } - //System.out.println("zipread time="+((System.currentTimeMillis()-startTime)/1000.0)); - zis.close(); - String newName; - String replace_new = - SimulationData.createSimIDWithJobIndex( - fieldDataFileOperationSpec.specEDI.getKey(), - FieldDataFileOperationSpec.JOBINDEX_DEFAULT, false); - if(isOldStyle){ - String replace_orig = - SimulationData.createSimIDWithJobIndex(origSimKey, 0, true); - newName = zeIN.getName().replaceAll(replace_orig, replace_new); - }else{ - String replace_orig = - SimulationData.createSimIDWithJobIndex( - origSimKey, - fieldDataFileOperationSpec.sourceSimParamScanJobIndex, false); - newName = zeIN.getName().replaceAll(replace_orig, replace_new); - } - ZipEntry zeOUT = new ZipEntry(newName); - zeOUT.setComment(zeIN.getComment()); - zeOUT.setCompressedSize(zeIN.getCompressedSize()); - zeOUT.setCrc(zeIN.getCrc()); - zeOUT.setExtra(zeIN.getExtra()); - zeOUT.setMethod(zeIN.getMethod()); - zeOUT.setSize(zeIN.getSize()); - zeOUT.setTime(zeIN.getTime()); + zipFile_new = new File(userDir,SimulationData.createCanonicalSimZipFileName(fieldDataFileOperationSpec.specEDI.getKey(),zipIndex,0,false,false)); + if(zipFile_new.exists()){ + throw new DataAccessException("new zipfile name "+zipFile_new.getAbsolutePath()+" already exists"); + } + removeFilesIfErrorV.add(zipFile_new); + + ZipFile inZipFile = null; + InputStream zis = null; + ZipOutputStream zos = null; + try{ + inZipFile = new ZipFile(zipFile_orig);; + zos = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(zipFile_new))); + Enumeration zipEntryEnum = inZipFile.getEntries(); + while(zipEntryEnum.hasMoreElements()){ + ZipEntry zeIN = zipEntryEnum.nextElement(); + byte[] zdataIN = new byte[(int)zeIN.getSize()]; + int num = 0; + int numTotal = 0; + zis = new BufferedInputStream(inZipFile.getInputStream((ZipArchiveEntry) zeIN)); + //long startTime = System.currentTimeMillis(); + while((num = zis.read(zdataIN, numTotal, zdataIN.length-numTotal)) != -1 && numTotal != zdataIN.length){ + numTotal+= num; + } + //System.out.println("zipread time="+((System.currentTimeMillis()-startTime)/1000.0)); + zis.close(); + String newName; + String replace_new = + SimulationData.createSimIDWithJobIndex( + fieldDataFileOperationSpec.specEDI.getKey(), + FieldDataFileOperationSpec.JOBINDEX_DEFAULT, false); + if(isOldStyle){ + String replace_orig = + SimulationData.createSimIDWithJobIndex(origSimKey, 0, true); + newName = zeIN.getName().replaceAll(replace_orig, replace_new); + }else{ + String replace_orig = + SimulationData.createSimIDWithJobIndex( + origSimKey, + fieldDataFileOperationSpec.sourceSimParamScanJobIndex, false); + newName = zeIN.getName().replaceAll(replace_orig, replace_new); + } + ZipEntry zeOUT = new ZipEntry(newName); + zeOUT.setComment(zeIN.getComment()); + zeOUT.setCompressedSize(zeIN.getCompressedSize()); + zeOUT.setCrc(zeIN.getCrc()); + zeOUT.setExtra(zeIN.getExtra()); + zeOUT.setMethod(zeIN.getMethod()); + zeOUT.setSize(zeIN.getSize()); + zeOUT.setTime(zeIN.getTime()); // startTime = System.currentTimeMillis(); - zos.putNextEntry(zeOUT); - zos.write(zdataIN, 0, zdataIN.length); + zos.putNextEntry(zeOUT); + zos.write(zdataIN, 0, zdataIN.length); // System.out.println("zipwrite time="+((System.currentTimeMillis()-startTime)/1000.0)+"\n"); - } - }finally{ - try{if(zis != null){zis.close();}}catch(Exception e){/*ignore*/}; - try{if(zos != null){zos.close();}}catch(Exception e){/*ignore*/}; - } - zipIndex+= 1; - } - //Now see if we can read what we just wrote - return fieldDataFileOperation( - FieldDataFileOperationSpec. - createInfoFieldDataFileOperationSpec( - fieldDataFileOperationSpec.specEDI.getKey(), - fieldDataFileOperationSpec.owner, - FieldDataFileOperationSpec.JOBINDEX_DEFAULT)); - }catch(Exception e){ - lg.error(e.getMessage(), e); - try{ - for(int i=0;i simFileNamesV = new Vector(); - try{ - if(!fdLogFile.createNewFile()){ - throw new Exception("File.createNewFile() returned null"); - } - ps = new PrintStream(fdLogFile); - for(int i=0;i simFileNamesV = new Vector(); + try{ + if(!fdLogFile.createNewFile()){ + throw new Exception("File.createNewFile() returned null"); + } + ps = new PrintStream(fdLogFile); + for(int i=0;i dbFuncFileNamesAndSimKeys = null; -// try{ -// dbFuncFileNamesAndSimKeys = -// FieldDataDBOperationDriver.getFunctionFileNamesAndSimKeys( -// fieldDataFileOperationSpec.specEDI.getOwner()); -// }catch(Exception e){ -// lg.error(e); -// throw new RuntimeException("couldn't get Function File names from Database\n"+e.getMessage()); -// } -// //String regex = "^.*"+MathMLTags.FIELD+"\\s*\\(\\s*"+fieldDataFileOperationSpec.specEDI.getName()+"\\s*,.*$"; -// String regex = "^.*?field\\s*\\(\\s*"+fieldDataFileOperationSpec.specEDI.getName()+"\\s*,.*?$"; -// java.util.regex.Pattern pattern = -// java.util.regex.Pattern.compile(regex);//,java.util.regex.Pattern.MULTILINE|java.util.regex.Pattern.DOTALL); -// Matcher matcher = pattern.matcher(""); -// Set> funcAndSimsES = dbFuncFileNamesAndSimKeys.entrySet(); -// Vector referencingFuncFileDescription = -// new Vector(); -// boolean bSearchSecondary = -// secondaryRootDirectory != null && -// !primaryRootDirectory.equals(secondaryRootDirectory); -// TreeSet searchedFuncFilesTS = new TreeSet(); -// Iterator> iter = funcAndSimsES.iterator(); -// FunctionFileGenerator.FuncFileLineInfo funcfileInfo = null; -// while(iter.hasNext()){ -// Map.Entry currentEntry = iter.next(); -// File currentFile = null; -// for (int i = 0; i < (bSearchSecondary?2:1); i++) { -// if(searchedFuncFilesTS.contains(currentEntry.getKey())){ -// continue; -// } -// currentFile = new File( -// getUserDirectoryName( -// (i==0?primaryRootDirectory:secondaryRootDirectory), -// fieldDataFileOperationSpec.specEDI.getOwner()),currentEntry.getKey()); -// if(!currentFile.exists()){ -// continue; -// } -// searchedFuncFilesTS.add(currentEntry.getKey()); -// LineNumberReader lineNumberReader = null; -// Vector referringFieldfunctionNamesV = new Vector(); -// try{ -// lineNumberReader = new LineNumberReader(new FileReader(currentFile)); -// String funcFileLine = null; -// while((funcFileLine = lineNumberReader.readLine()) != null){ -// funcfileInfo = FunctionFileGenerator.readFunctionLine(funcFileLine); -// if(funcfileInfo != null && funcfileInfo.functionExpr != null){ -// matcher.reset(funcfileInfo.functionExpr); -// if(matcher.matches()){ -// referringFieldfunctionNamesV.add(funcfileInfo.functionName); -// } -// } -// } -// lineNumberReader.close(); -// if(referringFieldfunctionNamesV.size() > 0){ -// FieldDataFileOperationResults.FieldDataReferenceInfo fieldDataReferenceInfo = -// FieldDataDBOperationDriver.getModelDescriptionForSimulation( -// fieldDataFileOperationSpec.specEDI.getOwner(), currentEntry.getValue()); -// fieldDataReferenceInfo.funcNames = referringFieldfunctionNamesV.toArray(new String[0]); -// referencingFuncFileDescription.add(fieldDataReferenceInfo); -//// for (int j = 0; j < referringFieldfunctionNamesV.size(); j++) { -//// referencingFuncFileDescription.add(new String[][] { -//// referringFieldfunctionNamesV.elementAt(j),modelDescription}); -//// } -// } -// }catch(Exception e){ -// lg.error(e); -// throw new RuntimeException(e.getMessage(),e); -// }finally{ -// if(lineNumberReader != null){try{lineNumberReader.close();}catch(Exception e){lg.error(e);}} -// } -// } -// } -// if(referencingFuncFileDescription.size() > 0){ -// FieldDataFileOperationResults fdfor = new FieldDataFileOperationResults(); -// fdfor.dependantFunctionInfo = -// referencingFuncFileDescription.toArray(new FieldDataFileOperationResults.FieldDataReferenceInfo[0]); -// return fdfor; -// } -// return null; - }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DELETE){ -// if(fieldDataFileOperation( + fieldDataFileOperationSpec.specEDI.getKey(), + fieldDataFileOperationSpec.owner, + FieldDataFileOperationSpec.JOBINDEX_DEFAULT)); + }catch(Exception e){ + lg.error(e.getMessage(), e); + throw new RuntimeException(e); + } +} + +private FieldDataFileOperationResults fieldDataDelete(FieldDataFileOperationSpec fieldDataFileOperationSpec) throws ObjectNotFoundException { + // if(fieldDataFileOperation( // FieldDataFileOperationSpec. // createDependantFuncsFieldDataFileOperationSpec( // fieldDataFileOperationSpec.specEDI)) != null){ // throw new RuntimeException("Error: Delete failed, reference to FieldData '"+fieldDataFileOperationSpec.specEDI.getName()+"' found in Simulation Data function"); // } - // - //Remove FieldData from caches - // - if(cacheTable0 != null){ - VCSimulationIdentifier vcSimID = + // + //Remove FieldData from caches + // + if(cacheTable0 != null){ + VCSimulationIdentifier vcSimID = new VCSimulationIdentifier( - fieldDataFileOperationSpec.specEDI.getKey(), - fieldDataFileOperationSpec.specEDI.getOwner()); - VCSimulationDataIdentifier simDataID = + fieldDataFileOperationSpec.specEDI.getKey(), + fieldDataFileOperationSpec.specEDI.getOwner()); + VCSimulationDataIdentifier simDataID = new VCSimulationDataIdentifier( vcSimID, FieldDataFileOperationSpec.JOBINDEX_DEFAULT); - cacheTable0.removeAll(simDataID); - cacheTable0.removeAll(fieldDataFileOperationSpec.specEDI); - } - if(userExtDataIDH != null){ - userExtDataIDH.remove(fieldDataFileOperationSpec.specEDI.getOwner()); - } - - SimulationData simulationData = null; - try{ - simulationData = (SimulationData)getVCData(fieldDataFileOperationSpec.specEDI); - }catch(Exception e){ - throw new ObjectNotFoundException(e.getMessage(),e); - } - File fdLogFile = simulationData.getLogFile(); - File fdMeshFile = simulationData.getMeshFile(false); - File fdFunctionFile = simulationData.getFunctionsFile(true); - File fdSubdomainFile = simulationData.getSubdomainFile(); - if(!fdLogFile.delete()){ - System.out.println("Couldn't delete log file "+fdLogFile.getAbsolutePath()); - } - if(!fdMeshFile.delete()){ - System.out.println("Couldn't delete Mesh file "+fdMeshFile.getAbsolutePath()); - } - if(!fdFunctionFile.delete()){ - System.out.println("Couldn't delete Functions file "+fdFunctionFile.getAbsolutePath()); + cacheTable0.removeAll(simDataID); + cacheTable0.removeAll(fieldDataFileOperationSpec.specEDI); + } + if(userExtDataIDH != null){ + userExtDataIDH.remove(fieldDataFileOperationSpec.specEDI.getOwner()); + } + + SimulationData simulationData = null; + try{ + simulationData = (SimulationData)getVCData(fieldDataFileOperationSpec.specEDI); + }catch(Exception e){ + throw new ObjectNotFoundException(e.getMessage(),e); + } + File fdLogFile = simulationData.getLogFile(); + File fdMeshFile = simulationData.getMeshFile(false); + File fdFunctionFile = simulationData.getFunctionsFile(true); + File fdSubdomainFile = simulationData.getSubdomainFile(); + if(!fdLogFile.delete()){ + System.out.println("Couldn't delete log file "+fdLogFile.getAbsolutePath()); + } + if(!fdMeshFile.delete()){ + System.out.println("Couldn't delete Mesh file "+fdMeshFile.getAbsolutePath()); + } + if(!fdFunctionFile.delete()){ + System.out.println("Couldn't delete Functions file "+fdFunctionFile.getAbsolutePath()); + } + if(fdSubdomainFile.exists() && fdSubdomainFile.delete()){ + System.out.println("Couldn't delete Subdomains file "+fdSubdomainFile.getAbsolutePath()); + } + + int index = 0; + while(true){ + File fdZipFile = simulationData.getZipFile(false, index); + if(index != 0 && !fdZipFile.exists()){ + break; } - if(fdSubdomainFile.exists() && fdSubdomainFile.delete()){ - System.out.println("Couldn't delete Subdomains file "+fdSubdomainFile.getAbsolutePath()); + if(!fdZipFile.delete()){ + System.out.println("Couldn't delete zip file "+fdZipFile.getAbsolutePath()); } + index+= 1; + } + return null; +} - int index = 0; - while(true){ - File fdZipFile = simulationData.getZipFile(false, index); - if(index != 0 && !fdZipFile.exists()){ - break; - } - if(!fdZipFile.delete()){ - System.out.println("Couldn't delete zip file "+fdZipFile.getAbsolutePath()); - } - index+= 1; - } - return null; - }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_INFO){ - try{ - FieldDataFileOperationResults fdor = new FieldDataFileOperationResults(); - VCDataIdentifier sourceSimDataID = +private FieldDataFileOperationResults fieldDataInfo(FieldDataFileOperationSpec fieldDataFileOperationSpec) throws ObjectNotFoundException { + try{ + FieldDataFileOperationResults fdor = new FieldDataFileOperationResults(); + VCDataIdentifier sourceSimDataID = new VCSimulationDataIdentifier( - new VCSimulationIdentifier( - fieldDataFileOperationSpec.sourceSimDataKey, - fieldDataFileOperationSpec.sourceOwner), - fieldDataFileOperationSpec.sourceSimParamScanJobIndex); - fdor.dataIdentifierArr = + new VCSimulationIdentifier( + fieldDataFileOperationSpec.sourceSimDataKey, + fieldDataFileOperationSpec.sourceOwner), + fieldDataFileOperationSpec.sourceSimParamScanJobIndex); + fdor.dataIdentifierArr = getDataIdentifiers(null,sourceSimDataID); - CartesianMesh mesh = getMesh(sourceSimDataID); - fdor.extent = mesh.getExtent(); - fdor.origin = mesh.getOrigin(); - fdor.iSize = new ISize(mesh.getSizeX(),mesh.getSizeY(),mesh.getSizeZ()); - fdor.times = getDataSetTimes(sourceSimDataID); - return fdor; - }catch(FileNotFoundException e){ - throw new ObjectNotFoundException("Error FieldDataOp get INFO",e); - }catch(Exception e){ - throw new RuntimeException("Error FieldDataFileOperationSpec INFO Operation\n"+e.getMessage()); - } + CartesianMesh mesh = getMesh(sourceSimDataID); + fdor.extent = mesh.getExtent(); + fdor.origin = mesh.getOrigin(); + fdor.iSize = new ISize(mesh.getSizeX(),mesh.getSizeY(),mesh.getSizeZ()); + fdor.times = getDataSetTimes(sourceSimDataID); + return fdor; + }catch(FileNotFoundException e){ + throw new ObjectNotFoundException("Error FieldDataOp get INFO",e); + }catch(Exception e){ + throw new RuntimeException("Error FieldDataFileOperationSpec INFO Operation\n"+e.getMessage()); + } +} + +public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperationSpec fieldDataFileOperationSpec) + throws ObjectNotFoundException{ + + if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_COPYSIM){ + return fieldDataCopySim(fieldDataFileOperationSpec); + }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_ADD){ + return fieldDataAdd(fieldDataFileOperationSpec); + }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DEPENDANTFUNCS){ + throw new RuntimeException("This function is not currently used"); + }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DELETE){ + return fieldDataDelete(fieldDataFileOperationSpec); + }else if(fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_INFO){ + return fieldDataInfo(fieldDataFileOperationSpec); } - throw new RuntimeException("Field data operation "+fieldDataFileOperationSpec.opType+" unknown."); } diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index 4b81791d2f..b6b0e456dc 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -1,24 +1,41 @@ package org.vcell.restq.handlers.FieldData; +import cbit.image.ImageException; +import cbit.image.VCImageUncompressed; import cbit.vcell.field.FieldDataDBOperationResults; import cbit.vcell.field.FieldDataDBOperationSpec; +import cbit.vcell.field.FieldDataFileConversion; +import cbit.vcell.field.io.FieldDataFileOperationResults; +import cbit.vcell.field.io.FieldDataFileOperationSpec; +import cbit.vcell.geometry.RegionImage; +import cbit.vcell.math.VariableType; import cbit.vcell.modeldb.DatabaseServerImpl; +import cbit.vcell.resource.PropertyLoader; +import cbit.vcell.simdata.DataSetControllerImpl; +import cbit.vcell.solvers.CartesianMesh; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; +import org.apache.commons.io.IOUtils; import org.vcell.restq.db.AgroalConnectionFactory; import org.vcell.util.DataAccessException; +import org.vcell.util.document.ExternalDataIdentifier; +import org.vcell.util.document.KeyValue; import org.vcell.util.document.User; +import java.io.*; import java.sql.SQLException; +import java.util.zip.DataFormatException; @ApplicationScoped public class FieldDataDB { private final DatabaseServerImpl databaseServer; + private final DataSetControllerImpl dataSetController; @Inject - public FieldDataDB(AgroalConnectionFactory agroalConnectionFactory) throws DataAccessException { + public FieldDataDB(AgroalConnectionFactory agroalConnectionFactory) throws DataAccessException, FileNotFoundException { databaseServer = new DatabaseServerImpl(agroalConnectionFactory, agroalConnectionFactory.getKeyFactory()); + dataSetController = new DataSetControllerImpl(null, new File("/simdata"), new File("/simdata")); } public FieldDataDBOperationResults copyNoConflict(User user, FieldDataDBOperationSpec spec) throws DataAccessException { @@ -29,7 +46,59 @@ public FieldDataDBOperationResults getAllFieldData(User user, FieldDataDBOperati return databaseServer.fieldDataDBOperation(user, spec); } - public FieldDataDBOperationResults saveNewFieldData(User user, FieldDataDBOperationSpec spec) throws DataAccessException { + public FieldDataFileOperationSpec generateFieldDataFromFile(InputStream imageFile, String fileName) throws DataAccessException, ImageException, DataFormatException { + if (imageFile == null) { + throw new DataAccessException("No file present"); + } + if (!fileName.contains(".vfrap")) { + try { + File tmpFile = File.createTempFile("tmp", "file"); + tmpFile.deleteOnExit(); + FileOutputStream out = new FileOutputStream(tmpFile); + IOUtils.copy(imageFile, out); + out.close(); + return FieldDataFileConversion.createFDOSFromImageFile(tmpFile, false, null); + } catch (DataFormatException | IOException ex) { + throw new RuntimeException("Cannot read image " + fileName + "\n" + ex.getMessage()); + } + } else { + throw new DataFormatException("Can't use .vfrap files"); + } + } + + + public FieldDataFileOperationResults saveNewFieldDataFromFile(FieldDataResource.SaveFieldDataFromFile saveFieldData, User user) throws DataAccessException, ImageException, DataFormatException { + + + VariableType[] varTypes = new VariableType[saveFieldData.varNames().length]; + for (int j = 0; j < saveFieldData.varNames().length; j++){ + varTypes[j] = VariableType.VOLUME; + } + FieldDataDBOperationSpec fieldDataDBOperationSpec = FieldDataDBOperationSpec.createSaveNewExtDataIDSpec(user, saveFieldData.name(), saveFieldData.annotation()); + FieldDataDBOperationResults results = databaseServer.fieldDataDBOperation(user, fieldDataDBOperationSpec); + FieldDataFileOperationSpec fdos = new FieldDataFileOperationSpec(saveFieldData.shortSpecData(), null, null, + results.extDataID, saveFieldData.varNames(), varTypes, saveFieldData.times(), user, + saveFieldData.origin(), saveFieldData.extent(), saveFieldData.isize(), saveFieldData.annotation(), + -1, null, user); + CartesianMesh cartesianMesh; + fdos.opType = FieldDataFileOperationSpec.FDOS_ADD; + try { + cartesianMesh = CartesianMesh.createSimpleCartesianMesh(fdos.origin, fdos.extent, fdos.isize, + new RegionImage(new VCImageUncompressed(null, new byte[fdos.isize.getXYZ()],//empty regions + fdos.extent, fdos.isize.getX(), fdos.isize.getY(), fdos.isize.getZ()), + 0, null, null, RegionImage.NO_SMOOTHING)); + fdos.cartesianMesh = cartesianMesh; + FieldDataFileOperationResults fileSaveResults = dataSetController.fieldDataFileOperation(fdos); + fileSaveResults.externalDataIdentifier = results.extDataID; + return fileSaveResults; + } catch (Exception e) { + // Remove DB entry if file creation fails + databaseServer.fieldDataDBOperation(user, FieldDataDBOperationSpec.createDeleteExtDataIDSpec(results.extDataID)); + throw new RuntimeException(e); + } + } + + public FieldDataDBOperationResults saveNewFieldDataIntoDB(User user, FieldDataDBOperationSpec spec) throws DataAccessException { return databaseServer.fieldDataDBOperation(user, spec); } diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index 00b0cd7581..578fc01d59 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -1,24 +1,35 @@ package org.vcell.restq.handlers.FieldData; +import cbit.image.ImageException; import cbit.vcell.field.FieldDataDBOperationResults; import cbit.vcell.field.FieldDataDBOperationSpec; +import cbit.vcell.field.io.FieldDataFileOperationResults; +import cbit.vcell.field.io.FieldDataFileOperationSpec; import io.quarkus.security.identity.SecurityIdentity; import jakarta.enterprise.context.RequestScoped; import jakarta.inject.Inject; import jakarta.ws.rs.*; import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.eclipse.microprofile.openapi.annotations.Operation; +import org.jboss.resteasy.reactive.PartType; import org.vcell.restq.db.UserRestDB; import org.vcell.util.DataAccessException; +import org.vcell.util.Extent; +import org.vcell.util.ISize; +import org.vcell.util.Origin; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; +import org.vcell.util.document.User; +import java.io.InputStream; import java.sql.SQLException; import java.util.HashMap; import java.util.Hashtable; import java.util.Vector; +import java.util.zip.DataFormatException; @Path("/api/v1/fieldData") @RequestScoped @@ -56,20 +67,49 @@ public FieldDataExternalDataIDs getAllFieldData(FieldDataDBOperationSpec fieldDa } @POST - @Path("/new") + @Path("/createFieldDataFromSimulation") @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @Operation(operationId = "createNewFieldData", summary = "Create a new field data component.") - public ExternalDataIdentifier createNewFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + @Operation(operationId = "createNewFieldDataFromSimulation", summary = "Create new field data from a simulation.") + public ExternalDataIdentifier submitNewFieldDataToDB(FieldDataDBOperationSpec fieldDataDBOperationSpec){ FieldDataDBOperationResults results = null; try { - results = fieldDataDB.saveNewFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + results = fieldDataDB.saveNewFieldDataIntoDB(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); } catch (DataAccessException e) { throw new WebApplicationException(e.getMessage(), 500); } return results.extDataID; } + @POST + @Path("/generateFieldDataEstimate") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.MULTIPART_FORM_DATA) + @Operation(operationId = "generateFieldDataEstimate") + public FieldDataFileOperationSpec generateFieldDataEstimate(SubmittedFieldDataFile spec){ + try{ + return fieldDataDB.generateFieldDataFromFile(spec.file, spec.fileName); + } catch (ImageException | DataFormatException | DataAccessException e) { + throw new WebApplicationException("Can't create new field data file", 500); + } + } + + @POST + @Path("/createFieldDataFromFile") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.APPLICATION_JSON) + @Operation(operationId = "createNewFieldDataFromFile") + public FieldDataFileOperationResults createNewFieldDataFromFile(SaveFieldDataFromFile saveFieldData){ + FieldDataFileOperationResults fileResults = null; + try{ + User user = userRestDB.getUserFromIdentity(securityIdentity); + fileResults = fieldDataDB.saveNewFieldDataFromFile(saveFieldData, user); + } catch (ImageException | DataFormatException | DataAccessException e) { + throw new WebApplicationException(e.getMessage(), Response.Status.INTERNAL_SERVER_ERROR); + } + return fileResults; + } + @POST @Path("/copy") @Produces(MediaType.APPLICATION_JSON) @@ -109,4 +149,25 @@ public record FieldDataExternalDataIDs( HashMap> externalDataIDSimRefs ) { } + public record SaveFieldDataFromFile( + short[][][] shortSpecData, //[time][var][data] + String[] varNames, + double[] times, + Origin origin, + Extent extent, + ISize isize, + String annotation, + String name + ){ } + + public static class SubmittedFieldDataFile { + @FormParam("file") + @PartType(MediaType.APPLICATION_OCTET_STREAM) + public InputStream file; + + @FormParam("fieldDataName") + @PartType(MediaType.TEXT_PLAIN) + public String fileName; + } + } From 7f91d0bc75984408820b804c68d400c44bfa124b Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 18 Dec 2024 13:00:41 -0500 Subject: [PATCH 09/37] Implement Delete For Rest Endpoint --- .../restq/handlers/FieldData/FieldDataDB.java | 9 ++--- .../handlers/FieldData/FieldDataResource.java | 34 +++++++++++-------- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index b6b0e456dc..b331993a76 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -10,7 +10,6 @@ import cbit.vcell.geometry.RegionImage; import cbit.vcell.math.VariableType; import cbit.vcell.modeldb.DatabaseServerImpl; -import cbit.vcell.resource.PropertyLoader; import cbit.vcell.simdata.DataSetControllerImpl; import cbit.vcell.solvers.CartesianMesh; import jakarta.enterprise.context.ApplicationScoped; @@ -67,7 +66,7 @@ public FieldDataFileOperationSpec generateFieldDataFromFile(InputStream imageFil } - public FieldDataFileOperationResults saveNewFieldDataFromFile(FieldDataResource.SaveFieldDataFromFile saveFieldData, User user) throws DataAccessException, ImageException, DataFormatException { + public FieldDataFileOperationResults saveNewFieldDataFromFile(FieldDataResource.AnalyzedResultsFromFieldData saveFieldData, User user) throws DataAccessException, ImageException, DataFormatException { VariableType[] varTypes = new VariableType[saveFieldData.varNames().length]; @@ -102,8 +101,10 @@ public FieldDataDBOperationResults saveNewFieldDataIntoDB(User user, FieldDataDB return databaseServer.fieldDataDBOperation(user, spec); } - public void deleteFieldData(User user, FieldDataDBOperationSpec spec) throws DataAccessException { - databaseServer.fieldDataDBOperation(user, spec); + public void deleteFieldData(User user, String fieldDataID) throws DataAccessException { + ExternalDataIdentifier edi = new ExternalDataIdentifier(new KeyValue(fieldDataID), user, null); + databaseServer.fieldDataDBOperation(user, FieldDataDBOperationSpec.createDeleteExtDataIDSpec(edi)); // remove from DB + dataSetController.fieldDataFileOperation(FieldDataFileOperationSpec.createDeleteFieldDataFileOperationSpec(edi)); // remove from File System } } diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index 578fc01d59..8a49452d30 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -82,32 +82,33 @@ public ExternalDataIdentifier submitNewFieldDataToDB(FieldDataDBOperationSpec fi } @POST - @Path("/generateFieldDataEstimate") + @Path("/createFieldDataFromFile") @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.MULTIPART_FORM_DATA) @Operation(operationId = "generateFieldDataEstimate") - public FieldDataFileOperationSpec generateFieldDataEstimate(SubmittedFieldDataFile spec){ + public FieldDataFileOperationSpec generateFieldDataEstimate(FieldDataFile fieldDataFile){ try{ - return fieldDataDB.generateFieldDataFromFile(spec.file, spec.fileName); + return fieldDataDB.generateFieldDataFromFile(fieldDataFile.file, fieldDataFile.fileName); } catch (ImageException | DataFormatException | DataAccessException e) { throw new WebApplicationException("Can't create new field data file", 500); } } @POST - @Path("/createFieldDataFromFile") + @Path("/createFieldDataFromFileAlreadyAnalyzed") @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @Operation(operationId = "createNewFieldDataFromFile") - public FieldDataFileOperationResults createNewFieldDataFromFile(SaveFieldDataFromFile saveFieldData){ - FieldDataFileOperationResults fileResults = null; + @Operation(operationId = "createNewFieldDataFromFileAlreadyAnalyzed") + public FieldDataSaveResults createNewFieldDataFromFile(AnalyzedResultsFromFieldData saveFieldData){ + FieldDataSaveResults fieldDataSaveResults; try{ User user = userRestDB.getUserFromIdentity(securityIdentity); - fileResults = fieldDataDB.saveNewFieldDataFromFile(saveFieldData, user); + FieldDataFileOperationResults fileResults = fieldDataDB.saveNewFieldDataFromFile(saveFieldData, user); + fieldDataSaveResults = new FieldDataSaveResults(fileResults.externalDataIdentifier.getName(), fileResults.externalDataIdentifier.getKey().toString()); } catch (ImageException | DataFormatException | DataAccessException e) { throw new WebApplicationException(e.getMessage(), Response.Status.INTERNAL_SERVER_ERROR); } - return fileResults; + return fieldDataSaveResults; } @POST @@ -126,12 +127,10 @@ public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataD } @DELETE - @Produces(MediaType.APPLICATION_JSON) - @Consumes(MediaType.APPLICATION_JSON) @Operation(operationId = "deleteFieldData", summary = "Delete the selected field data.") - public void deleteFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ + public void deleteFieldData(String fieldDataID){ try{ - fieldDataDB.deleteFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + fieldDataDB.deleteFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID); } catch (DataAccessException e) { throw new WebApplicationException(e.getMessage(), 500); } @@ -149,7 +148,7 @@ public record FieldDataExternalDataIDs( HashMap> externalDataIDSimRefs ) { } - public record SaveFieldDataFromFile( + public record AnalyzedResultsFromFieldData( short[][][] shortSpecData, //[time][var][data] String[] varNames, double[] times, @@ -160,7 +159,12 @@ public record SaveFieldDataFromFile( String name ){ } - public static class SubmittedFieldDataFile { + public record FieldDataSaveResults( + String fieldDataName, + String fieldDataID + ){ } + + public static class FieldDataFile { @FormParam("file") @PartType(MediaType.APPLICATION_OCTET_STREAM) public InputStream file; From 7fec4c5b7a73075e5afc4aa3cf865a72bc47a185 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 18 Dec 2024 13:02:37 -0500 Subject: [PATCH 10/37] Use Rest Endpoint Delete On Java Client --- .../vcell/field/gui/FieldDataGUIPanel.java | 8 ----- .../field/io/FieldDataFileOperationSpec.java | 30 +++++++++++++++++ .../LocalDataSetControllerMessaging.java | 33 ++++++++----------- .../LocalUserMetaDbServerMessaging.java | 3 ++ 4 files changed, 46 insertions(+), 28 deletions(-) diff --git a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java index 10a57e3c8f..fcbfb2803c 100644 --- a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java +++ b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java @@ -798,8 +798,6 @@ public void run(Hashtable hash) throws Exception { FieldDataFileOperationSpec fdos = FieldDataFileOperationSpec.createDeleteFieldDataFileOperationSpec( fieldDataMainList.externalDataIdentifier); clientRequestManager.getDocumentManager().fieldDataFileOperation(fdos); - //Remove from DB - fieldDataWindowManager.deleteExternalDataIdentifier(fieldDataMainList.externalDataIdentifier); } }; // @@ -1173,12 +1171,6 @@ public void run(Hashtable hashTable) throws Exception { FieldDataFileOperationResults results = documentManager.fieldDataFileOperation(generatedFieldDataOpSpec); generatedFieldDataOpSpec.specEDI = results.externalDataIdentifier; } catch (Exception e) { - try { - //try to cleanup new ExtDataID - documentManager.fieldDataDBOperation(FieldDataDBOperationSpec.createDeleteExtDataIDSpec(generatedFieldDataOpSpec.specEDI)); - } catch (Exception e2) { - //ignore - } generatedFieldDataOpSpec.specEDI = null; throw e; } diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java index 4dd83ee254..9ae1569fac 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java @@ -10,6 +10,7 @@ package cbit.vcell.field.io; +import org.vcell.restclient.model.AnalyzedResultsFromFieldData; import org.vcell.restclient.model.FieldDataFileOperationResults; import org.vcell.util.Extent; import org.vcell.util.ISize; @@ -21,6 +22,11 @@ import cbit.vcell.math.VariableType; import cbit.vcell.solvers.CartesianMesh; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + /** * Insert the type's description here. * Creation date: (1/10/2007 11:00:51 AM) @@ -83,6 +89,26 @@ public FieldDataFileOperationSpec(short[][][] shortSpecData, double[][][] double this.sourceOwner = sourceOwner; } +public static AnalyzedResultsFromFieldData fieldDataSpecToAnalyzedResultsDTO(FieldDataFileOperationSpec fieldDataFileOperationSpec){ + List>> listVersion = Arrays.stream(fieldDataFileOperationSpec.shortSpecData) // Stream of short[][] + .map(twoDArray -> Arrays.stream(twoDArray) // Stream of short[] + .map(oneDArray -> { + List list = new ArrayList<>(); + for (short j : oneDArray) { + list.add((int) j); + } + return list; + }).collect(Collectors.toList())).collect(Collectors.toList()); + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = new AnalyzedResultsFromFieldData(); + analyzedResultsFromFieldData.annotation(fieldDataFileOperationSpec.annotation); analyzedResultsFromFieldData.isize(ISize.iSizeToDTO(fieldDataFileOperationSpec.isize)); + analyzedResultsFromFieldData.extent(Extent.extentToDTO(fieldDataFileOperationSpec.extent)); analyzedResultsFromFieldData.origin(Origin.originToDTO(fieldDataFileOperationSpec.origin)); + analyzedResultsFromFieldData.times(Arrays.stream(fieldDataFileOperationSpec.times).boxed().toList()); analyzedResultsFromFieldData.setName(fieldDataFileOperationSpec.fieldDataName); + analyzedResultsFromFieldData.varNames(Arrays.stream(fieldDataFileOperationSpec.varNames).toList()); analyzedResultsFromFieldData.shortSpecData(listVersion); + return analyzedResultsFromFieldData; +} + + +@Deprecated public static FieldDataFileOperationSpec createCopySimFieldDataFileOperationSpec( ExternalDataIdentifier newExtDataID, KeyValue argSourceSimDataKey, @@ -99,6 +125,8 @@ public static FieldDataFileOperationSpec createCopySimFieldDataFileOperationSpec fieldDataFileOperationSpec.owner = destinationOwner; return fieldDataFileOperationSpec; } + +@Deprecated public static FieldDataFileOperationSpec createInfoFieldDataFileOperationSpec( KeyValue argSourceSimDataKey,User argSourceOwner,int argSimParamScanJobIndex){ FieldDataFileOperationSpec fieldDataFileOperationSpec = @@ -109,6 +137,8 @@ public static FieldDataFileOperationSpec createInfoFieldDataFileOperationSpec( fieldDataFileOperationSpec.sourceSimParamScanJobIndex = argSimParamScanJobIndex; return fieldDataFileOperationSpec; } + +@Deprecated public static FieldDataFileOperationSpec createDeleteFieldDataFileOperationSpec( ExternalDataIdentifier deleteExtDataID){ FieldDataFileOperationSpec fieldDataFileOperationSpec = diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java index 07e1e3ba34..7716722725 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java @@ -13,14 +13,14 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.vcell.api.client.VCellApiClient; -import org.vcell.restclient.model.SaveFieldDataFromFile; -import org.vcell.restclient.model.VariableType; +import org.vcell.restclient.model.*; import org.vcell.solver.nfsim.NFSimMolecularConfigurations; import org.vcell.util.DataAccessException; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; import org.vcell.util.document.ExternalDataIdentifier; +import org.vcell.util.document.KeyValue; import org.vcell.util.document.UserLoginInfo; import org.vcell.util.document.VCDataIdentifier; import org.vcell.vis.io.VtuFileContainer; @@ -72,25 +72,18 @@ public LocalDataSetControllerMessaging (UserLoginInfo userLoginInfo, RpcSender r public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperationSpec fieldDataFileOperationSpec) throws DataAccessException { if (lg.isTraceEnabled()) lg.trace("LocalDataSetControllerMessaging.fieldDataFileOperationSpec(...)"); try { - if (fieldDataFileOperationSpec.opType != FieldDataFileOperationSpec.FDOS_ADD){ + if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_ADD){ + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = FieldDataFileOperationSpec.fieldDataSpecToAnalyzedResultsDTO(fieldDataFileOperationSpec); + FieldDataSaveResults results = vCellApiClient.getFieldDataApi().createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); + FieldDataFileOperationResults fieldDataFileOperationResults = new FieldDataFileOperationResults(); + fieldDataFileOperationResults.externalDataIdentifier = new ExternalDataIdentifier(new KeyValue(results.getFieldDataID()), fieldDataFileOperationSpec.owner, results.getFieldDataName()); + return fieldDataFileOperationResults; + } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DELETE) { + vCellApiClient.getFieldDataApi().deleteFieldData(fieldDataFileOperationSpec.specEDI.getKey().toString()); + return null; + } + else { return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); - } else { - List>> listVersion = Arrays.stream(fieldDataFileOperationSpec.shortSpecData) // Stream of short[][] - .map(twoDArray -> Arrays.stream(twoDArray) // Stream of short[] - .map(oneDArray -> { - List list = new ArrayList<>(); - for (short j : oneDArray) { - list.add((int) j); - } - return list; - }).collect(Collectors.toList())).collect(Collectors.toList()); - SaveFieldDataFromFile saveFieldDataFromFile = new SaveFieldDataFromFile(); - saveFieldDataFromFile.annotation(fieldDataFileOperationSpec.annotation); saveFieldDataFromFile.isize(ISize.iSizeToDTO(fieldDataFileOperationSpec.isize)); - saveFieldDataFromFile.extent(Extent.extentToDTO(fieldDataFileOperationSpec.extent)); saveFieldDataFromFile.origin(Origin.originToDTO(fieldDataFileOperationSpec.origin)); - saveFieldDataFromFile.times(Arrays.stream(fieldDataFileOperationSpec.times).boxed().toList()); saveFieldDataFromFile.setName(fieldDataFileOperationSpec.fieldDataName); - saveFieldDataFromFile.varNames(Arrays.stream(fieldDataFileOperationSpec.varNames).toList()); saveFieldDataFromFile.shortSpecData(listVersion); - org.vcell.restclient.model.FieldDataFileOperationResults results = vCellApiClient.getFieldDataApi().createNewFieldDataFromFile(saveFieldDataFromFile); - return FieldDataFileOperationResults.dtoToFieldDataFileOperationResults(results); } } catch (DataAccessException e){ lg.error(e.getMessage(),e); diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java index b4351b9660..22bc284c90 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java @@ -122,6 +122,9 @@ public FieldDataDBOperationResults fieldDataDBOperation(FieldDataDBOperationSpec try { if (lg.isTraceEnabled()) lg.trace("LocalUserMetaDbServerMessaging.fieldDataDBOperation(...)"); + if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE){ + throw new RuntimeException("Can not call deletion on field data DB entry. Have to do both file, and DB deletion."); + } return dbServerProxy.fieldDataDBOperation(fieldDataDBOperationSpec); } catch (DataAccessException e) { lg.error(e.getMessage(),e); From a4910eb915dc6f9b1445434b22bc1ceed55fedfb Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 20 Dec 2024 10:16:07 -0500 Subject: [PATCH 11/37] Updated Java Client --- .../.github/workflows/python.yml | 4 +- python-restclient/.openapi-generator/FILES | 63 + python-restclient/README.md | 26 + .../docs/AnalyzedResultsFromFieldData.md | 35 + python-restclient/docs/BioModelResourceApi.md | 3 +- python-restclient/docs/CartesianMesh.md | 43 + python-restclient/docs/Coordinate.md | 30 + python-restclient/docs/Extent.md | 30 + .../docs/ExternalDataIdentifier.md | 35 + .../docs/FieldDataDBOperationSpec.md | 35 + .../docs/FieldDataExternalDataIDs.md | 30 + .../docs/FieldDataFileOperationSpec.md | 44 + .../docs/FieldDataNoCopyConflict.md | 29 + .../docs/FieldDataResourceApi.md | 405 ++++ .../docs/FieldDataSaveResults.md | 29 + python-restclient/docs/GroupAccess.md | 29 + python-restclient/docs/ISize.md | 31 + python-restclient/docs/Origin.md | 30 + python-restclient/docs/UCDInfo.md | 39 + python-restclient/docs/UsersResourceApi.md | 2 +- python-restclient/docs/VariableDomain.md | 10 + python-restclient/docs/VariableType.md | 36 + python-restclient/docs/Version.md | 44 + python-restclient/docs/VersionFlag.md | 32 + python-restclient/docs/VersionableType.md | 35 + .../docs/VersionableTypeVersion.md | 29 + python-restclient/pyproject.toml | 6 +- .../test_analyzed_results_from_field_data.py | 80 + python-restclient/test/test_cartesian_mesh.py | 118 ++ python-restclient/test/test_coordinate.py | 55 + python-restclient/test/test_extent.py | 55 + .../test/test_external_data_identifier.py | 70 + .../test/test_field_data_db_operation_spec.py | 131 ++ .../test/test_field_data_external_data_ids.py | 78 + .../test_field_data_file_operation_spec.py | 201 ++ .../test/test_field_data_no_copy_conflict.py | 73 + .../test/test_field_data_resource_api.py | 72 + .../test/test_field_data_save_results.py | 54 + python-restclient/test/test_group_access.py | 54 + python-restclient/test/test_i_size.py | 56 + python-restclient/test/test_origin.py | 55 + python-restclient/test/test_ucd_info.py | 95 + .../test/test_variable_domain.py | 35 + python-restclient/test/test_variable_type.py | 61 + python-restclient/test/test_version.py | 99 + python-restclient/test/test_version_flag.py | 57 + .../test/test_versionable_type.py | 60 + .../test/test_versionable_type_version.py | 100 + python-restclient/vcell_client/__init__.py | 21 + .../vcell_client/api/__init__.py | 1 + .../api/bio_model_resource_api.py | 9 +- .../api/field_data_resource_api.py | 1686 +++++++++++++++++ .../vcell_client/models/__init__.py | 20 + .../analyzed_results_from_field_data.py | 120 ++ .../vcell_client/models/cartesian_mesh.py | 132 ++ .../vcell_client/models/coordinate.py | 97 + .../vcell_client/models/extent.py | 97 + .../models/external_data_identifier.py | 122 ++ .../models/field_data_db_operation_spec.py | 120 ++ .../models/field_data_external_data_ids.py | 123 ++ .../models/field_data_file_operation_spec.py | 165 ++ .../models/field_data_no_copy_conflict.py | 122 ++ .../models/field_data_save_results.py | 96 + .../vcell_client/models/group_access.py | 95 + .../vcell_client/models/i_size.py | 100 + .../vcell_client/models/origin.py | 97 + .../vcell_client/models/ucd_info.py | 148 ++ .../vcell_client/models/variable_domain.py | 51 + .../vcell_client/models/variable_type.py | 111 ++ .../vcell_client/models/version.py | 157 ++ .../vcell_client/models/version_flag.py | 102 + .../vcell_client/models/versionable_type.py | 108 ++ .../models/versionable_type_version.py | 104 + tools/openapi.yaml | 572 +++++- vcell-restclient/.openapi-generator/FILES | 63 + vcell-restclient/README.md | 32 + vcell-restclient/api/openapi.yaml | 1520 ++++++++++++++- .../docs/AnalyzedResultsFromFieldData.md | 20 + vcell-restclient/docs/BioModelResourceApi.md | 6 +- vcell-restclient/docs/CartesianMesh.md | 28 + vcell-restclient/docs/Coordinate.md | 15 + vcell-restclient/docs/Extent.md | 15 + .../docs/ExternalDataIdentifier.md | 20 + .../docs/FieldDataDBOperationSpec.md | 20 + .../docs/FieldDataExternalDataIDs.md | 15 + .../docs/FieldDataFileOperationSpec.md | 29 + .../docs/FieldDataNoCopyConflict.md | 14 + vcell-restclient/docs/FieldDataResourceApi.md | 802 ++++++++ vcell-restclient/docs/FieldDataSaveResults.md | 14 + vcell-restclient/docs/GroupAccess.md | 14 + vcell-restclient/docs/ISize.md | 16 + vcell-restclient/docs/Origin.md | 15 + vcell-restclient/docs/UCDInfo.md | 24 + vcell-restclient/docs/UsersResourceApi.md | 4 +- vcell-restclient/docs/VariableDomain.md | 23 + vcell-restclient/docs/VariableType.md | 21 + vcell-restclient/docs/Version.md | 29 + vcell-restclient/docs/VersionFlag.md | 17 + vcell-restclient/docs/VersionableType.md | 20 + .../docs/VersionableTypeVersion.md | 14 + .../restclient/api/FieldDataResourceApi.java | 563 ++++++ .../vcell/restclient/api/HelloWorldApi.java | 6 + .../api/PublicationResourceApi.java | 6 + .../restclient/api/SimulationResourceApi.java | 6 + .../restclient/api/UsersResourceApi.java | 6 + .../model/AnalyzedResultsFromFieldData.java | 445 +++++ .../vcell/restclient/model/CartesianMesh.java | 733 +++++++ .../vcell/restclient/model/Coordinate.java | 222 +++ .../org/vcell/restclient/model/Extent.java | 222 +++ .../model/ExternalDataIdentifier.java | 404 ++++ .../model/FieldDataDBOperationSpec.java | 419 ++++ .../model/FieldDataExternalDataIDs.java | 265 +++ .../model/FieldDataFileOperationSpec.java | 801 ++++++++ .../model/FieldDataNoCopyConflict.java | 216 +++ .../model/FieldDataSaveResults.java | 186 ++ .../vcell/restclient/model/GroupAccess.java | 187 ++ .../org/vcell/restclient/model/ISize.java | 258 +++ .../org/vcell/restclient/model/Origin.java | 222 +++ .../org/vcell/restclient/model/UCDInfo.java | 614 ++++++ .../restclient/model/VariableDomain.java | 88 + .../vcell/restclient/model/VariableType.java | 439 +++++ .../org/vcell/restclient/model/Version.java | 732 +++++++ .../vcell/restclient/model/VersionFlag.java | 294 +++ .../restclient/model/VersionableType.java | 402 ++++ .../model/VersionableTypeVersion.java | 188 ++ .../api/FieldDataResourceApiTest.java | 147 ++ .../AnalyzedResultsFromFieldDataTest.java | 109 ++ .../restclient/model/CartesianMeshTest.java | 175 ++ .../restclient/model/CoordinateTest.java | 64 + .../vcell/restclient/model/ExtentTest.java | 64 + .../model/ExternalDataIdentifierTest.java | 106 ++ .../model/FieldDataDBOperationSpecTest.java | 109 ++ .../model/FieldDataExternalDataIDsTest.java | 70 + .../model/FieldDataFileOperationSpecTest.java | 186 ++ .../model/FieldDataNoCopyConflictTest.java | 60 + .../model/FieldDataSaveResultsTest.java | 56 + .../restclient/model/GroupAccessTest.java | 57 + .../org/vcell/restclient/model/ISizeTest.java | 72 + .../vcell/restclient/model/OriginTest.java | 64 + .../vcell/restclient/model/UCDInfoTest.java | 139 ++ .../restclient/model/VariableDomainTest.java | 32 + .../restclient/model/VariableTypeTest.java | 113 ++ .../restclient/model/VersionFlagTest.java | 80 + .../vcell/restclient/model/VersionTest.java | 182 ++ .../restclient/model/VersionableTypeTest.java | 104 + .../model/VersionableTypeVersionTest.java | 58 + .../modules/openapi/.openapi-generator/FILES | 22 + .../src/app/core/modules/openapi/api/api.ts | 5 +- .../api/field-data-resource.service.ts | 526 +++++ .../field-data-resource.serviceInterface.ts | 76 + .../model/analyzed-results-from-field-data.ts | 27 + .../modules/openapi/model/cartesian-mesh.ts | 34 + .../core/modules/openapi/model/coordinate.ts | 19 + .../app/core/modules/openapi/model/extent.ts | 19 + .../openapi/model/external-data-identifier.ts | 26 + .../model/field-data-db-operation-spec.ts | 27 + .../model/field-data-external-data-ids.ts | 21 + .../model/field-data-file-operation-spec.ts | 41 + .../model/field-data-no-copy-conflict.ts | 20 + .../openapi/model/field-data-save-results.ts | 18 + .../modules/openapi/model/group-access.ts | 18 + .../app/core/modules/openapi/model/i-size.ts | 20 + .../app/core/modules/openapi/model/models.ts | 20 + .../app/core/modules/openapi/model/origin.ts | 19 + .../core/modules/openapi/model/ucd-info.ts | 29 + .../modules/openapi/model/variable-domain.ts | 25 + .../modules/openapi/model/variable-type.ts | 29 + .../modules/openapi/model/version-flag.ts | 21 + .../app/core/modules/openapi/model/version.ts | 37 + .../openapi/model/versionable-type-version.ts | 20 + .../modules/openapi/model/versionable-type.ts | 24 + 171 files changed, 21205 insertions(+), 118 deletions(-) create mode 100644 python-restclient/docs/AnalyzedResultsFromFieldData.md create mode 100644 python-restclient/docs/CartesianMesh.md create mode 100644 python-restclient/docs/Coordinate.md create mode 100644 python-restclient/docs/Extent.md create mode 100644 python-restclient/docs/ExternalDataIdentifier.md create mode 100644 python-restclient/docs/FieldDataDBOperationSpec.md create mode 100644 python-restclient/docs/FieldDataExternalDataIDs.md create mode 100644 python-restclient/docs/FieldDataFileOperationSpec.md create mode 100644 python-restclient/docs/FieldDataNoCopyConflict.md create mode 100644 python-restclient/docs/FieldDataResourceApi.md create mode 100644 python-restclient/docs/FieldDataSaveResults.md create mode 100644 python-restclient/docs/GroupAccess.md create mode 100644 python-restclient/docs/ISize.md create mode 100644 python-restclient/docs/Origin.md create mode 100644 python-restclient/docs/UCDInfo.md create mode 100644 python-restclient/docs/VariableDomain.md create mode 100644 python-restclient/docs/VariableType.md create mode 100644 python-restclient/docs/Version.md create mode 100644 python-restclient/docs/VersionFlag.md create mode 100644 python-restclient/docs/VersionableType.md create mode 100644 python-restclient/docs/VersionableTypeVersion.md create mode 100644 python-restclient/test/test_analyzed_results_from_field_data.py create mode 100644 python-restclient/test/test_cartesian_mesh.py create mode 100644 python-restclient/test/test_coordinate.py create mode 100644 python-restclient/test/test_extent.py create mode 100644 python-restclient/test/test_external_data_identifier.py create mode 100644 python-restclient/test/test_field_data_db_operation_spec.py create mode 100644 python-restclient/test/test_field_data_external_data_ids.py create mode 100644 python-restclient/test/test_field_data_file_operation_spec.py create mode 100644 python-restclient/test/test_field_data_no_copy_conflict.py create mode 100644 python-restclient/test/test_field_data_resource_api.py create mode 100644 python-restclient/test/test_field_data_save_results.py create mode 100644 python-restclient/test/test_group_access.py create mode 100644 python-restclient/test/test_i_size.py create mode 100644 python-restclient/test/test_origin.py create mode 100644 python-restclient/test/test_ucd_info.py create mode 100644 python-restclient/test/test_variable_domain.py create mode 100644 python-restclient/test/test_variable_type.py create mode 100644 python-restclient/test/test_version.py create mode 100644 python-restclient/test/test_version_flag.py create mode 100644 python-restclient/test/test_versionable_type.py create mode 100644 python-restclient/test/test_versionable_type_version.py create mode 100644 python-restclient/vcell_client/api/field_data_resource_api.py create mode 100644 python-restclient/vcell_client/models/analyzed_results_from_field_data.py create mode 100644 python-restclient/vcell_client/models/cartesian_mesh.py create mode 100644 python-restclient/vcell_client/models/coordinate.py create mode 100644 python-restclient/vcell_client/models/extent.py create mode 100644 python-restclient/vcell_client/models/external_data_identifier.py create mode 100644 python-restclient/vcell_client/models/field_data_db_operation_spec.py create mode 100644 python-restclient/vcell_client/models/field_data_external_data_ids.py create mode 100644 python-restclient/vcell_client/models/field_data_file_operation_spec.py create mode 100644 python-restclient/vcell_client/models/field_data_no_copy_conflict.py create mode 100644 python-restclient/vcell_client/models/field_data_save_results.py create mode 100644 python-restclient/vcell_client/models/group_access.py create mode 100644 python-restclient/vcell_client/models/i_size.py create mode 100644 python-restclient/vcell_client/models/origin.py create mode 100644 python-restclient/vcell_client/models/ucd_info.py create mode 100644 python-restclient/vcell_client/models/variable_domain.py create mode 100644 python-restclient/vcell_client/models/variable_type.py create mode 100644 python-restclient/vcell_client/models/version.py create mode 100644 python-restclient/vcell_client/models/version_flag.py create mode 100644 python-restclient/vcell_client/models/versionable_type.py create mode 100644 python-restclient/vcell_client/models/versionable_type_version.py create mode 100644 vcell-restclient/docs/AnalyzedResultsFromFieldData.md create mode 100644 vcell-restclient/docs/CartesianMesh.md create mode 100644 vcell-restclient/docs/Coordinate.md create mode 100644 vcell-restclient/docs/Extent.md create mode 100644 vcell-restclient/docs/ExternalDataIdentifier.md create mode 100644 vcell-restclient/docs/FieldDataDBOperationSpec.md create mode 100644 vcell-restclient/docs/FieldDataExternalDataIDs.md create mode 100644 vcell-restclient/docs/FieldDataFileOperationSpec.md create mode 100644 vcell-restclient/docs/FieldDataNoCopyConflict.md create mode 100644 vcell-restclient/docs/FieldDataResourceApi.md create mode 100644 vcell-restclient/docs/FieldDataSaveResults.md create mode 100644 vcell-restclient/docs/GroupAccess.md create mode 100644 vcell-restclient/docs/ISize.md create mode 100644 vcell-restclient/docs/Origin.md create mode 100644 vcell-restclient/docs/UCDInfo.md create mode 100644 vcell-restclient/docs/VariableDomain.md create mode 100644 vcell-restclient/docs/VariableType.md create mode 100644 vcell-restclient/docs/Version.md create mode 100644 vcell-restclient/docs/VersionFlag.md create mode 100644 vcell-restclient/docs/VersionableType.md create mode 100644 vcell-restclient/docs/VersionableTypeVersion.md create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Extent.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Origin.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VariableDomain.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VariableType.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/ExtentTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/OriginTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VariableDomainTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VariableTypeTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java create mode 100644 webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/analyzed-results-from-field-data.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/coordinate.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/extent.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-save-results.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/group-access.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/i-size.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/origin.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/variable-domain.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/variable-type.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/version-flag.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/version.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts diff --git a/python-restclient/.github/workflows/python.yml b/python-restclient/.github/workflows/python.yml index 2c82355c84..33681d21d7 100644 --- a/python-restclient/.github/workflows/python.yml +++ b/python-restclient/.github/workflows/python.yml @@ -16,9 +16,9 @@ jobs: python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/python-restclient/.openapi-generator/FILES b/python-restclient/.openapi-generator/FILES index 8586892bc2..0aec7584ab 100644 --- a/python-restclient/.openapi-generator/FILES +++ b/python-restclient/.openapi-generator/FILES @@ -3,17 +3,31 @@ README.md docs/AccesTokenRepresentationRecord.md docs/AdminResourceApi.md +docs/AnalyzedResultsFromFieldData.md docs/BatchSystemType.md docs/BioModel.md docs/BioModelResourceApi.md docs/BiomodelRef.md +docs/CartesianMesh.md +docs/Coordinate.md docs/DetailedState.md +docs/Extent.md +docs/ExternalDataIdentifier.md +docs/FieldDataDBOperationSpec.md +docs/FieldDataExternalDataIDs.md +docs/FieldDataFileOperationSpec.md +docs/FieldDataNoCopyConflict.md +docs/FieldDataResourceApi.md +docs/FieldDataSaveResults.md +docs/GroupAccess.md docs/HelloWorldApi.md docs/HelloWorldMessage.md docs/HtcJobID.md +docs/ISize.md docs/Identity.md docs/KeyValue.md docs/MathmodelRef.md +docs/Origin.md docs/Publication.md docs/PublicationResourceApi.md docs/SchedulerStatus.md @@ -26,19 +40,48 @@ docs/SimulationResourceApi.md docs/SimulationStatusPersistentRecord.md docs/Status.md docs/StatusMessage.md +docs/UCDInfo.md docs/User.md docs/UserIdentityJSONSafe.md docs/UserLoginInfoForMapping.md docs/UserRegistrationInfo.md docs/UsersResourceApi.md docs/VCSimulationIdentifier.md +docs/VariableDomain.md +docs/VariableType.md +docs/Version.md +docs/VersionFlag.md +docs/VersionableType.md +docs/VersionableTypeVersion.md pyproject.toml test/__init__.py +test/test_analyzed_results_from_field_data.py +test/test_cartesian_mesh.py +test/test_coordinate.py +test/test_extent.py +test/test_external_data_identifier.py +test/test_field_data_db_operation_spec.py +test/test_field_data_external_data_ids.py +test/test_field_data_file_operation_spec.py +test/test_field_data_no_copy_conflict.py +test/test_field_data_resource_api.py +test/test_field_data_save_results.py +test/test_group_access.py +test/test_i_size.py +test/test_origin.py +test/test_ucd_info.py +test/test_variable_domain.py +test/test_variable_type.py +test/test_version.py +test/test_version_flag.py +test/test_versionable_type.py +test/test_versionable_type_version.py tox.ini vcell_client/__init__.py vcell_client/api/__init__.py vcell_client/api/admin_resource_api.py vcell_client/api/bio_model_resource_api.py +vcell_client/api/field_data_resource_api.py vcell_client/api/hello_world_api.py vcell_client/api/publication_resource_api.py vcell_client/api/simulation_resource_api.py @@ -49,15 +92,28 @@ vcell_client/configuration.py vcell_client/exceptions.py vcell_client/models/__init__.py vcell_client/models/acces_token_representation_record.py +vcell_client/models/analyzed_results_from_field_data.py vcell_client/models/batch_system_type.py vcell_client/models/bio_model.py vcell_client/models/biomodel_ref.py +vcell_client/models/cartesian_mesh.py +vcell_client/models/coordinate.py vcell_client/models/detailed_state.py +vcell_client/models/extent.py +vcell_client/models/external_data_identifier.py +vcell_client/models/field_data_db_operation_spec.py +vcell_client/models/field_data_external_data_ids.py +vcell_client/models/field_data_file_operation_spec.py +vcell_client/models/field_data_no_copy_conflict.py +vcell_client/models/field_data_save_results.py +vcell_client/models/group_access.py vcell_client/models/hello_world_message.py vcell_client/models/htc_job_id.py +vcell_client/models/i_size.py vcell_client/models/identity.py vcell_client/models/key_value.py vcell_client/models/mathmodel_ref.py +vcell_client/models/origin.py vcell_client/models/publication.py vcell_client/models/scheduler_status.py vcell_client/models/simulation_execution_status_record.py @@ -68,10 +124,17 @@ vcell_client/models/simulation_queue_id.py vcell_client/models/simulation_status_persistent_record.py vcell_client/models/status.py vcell_client/models/status_message.py +vcell_client/models/ucd_info.py vcell_client/models/user.py vcell_client/models/user_identity_json_safe.py vcell_client/models/user_login_info_for_mapping.py vcell_client/models/user_registration_info.py +vcell_client/models/variable_domain.py +vcell_client/models/variable_type.py vcell_client/models/vc_simulation_identifier.py +vcell_client/models/version.py +vcell_client/models/version_flag.py +vcell_client/models/versionable_type.py +vcell_client/models/versionable_type_version.py vcell_client/py.typed vcell_client/rest.py diff --git a/python-restclient/README.md b/python-restclient/README.md index 2acb9c319c..26963e5ea1 100644 --- a/python-restclient/README.md +++ b/python-restclient/README.md @@ -89,6 +89,12 @@ Class | Method | HTTP request | Description *BioModelResourceApi* | [**delete_bio_model**](docs/BioModelResourceApi.md#delete_bio_model) | **DELETE** /api/v1/bioModel/{bioModelID} | Delete the BioModel from VCell's database. *BioModelResourceApi* | [**get_biomodel_by_id**](docs/BioModelResourceApi.md#get_biomodel_by_id) | **GET** /api/v1/bioModel/{bioModelID} | Get BioModel information in JSON format by ID. *BioModelResourceApi* | [**upload_bio_model**](docs/BioModelResourceApi.md#upload_bio_model) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. +*FieldDataResourceApi* | [**copy_field_data**](docs/FieldDataResourceApi.md#copy_field_data) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. +*FieldDataResourceApi* | [**create_new_field_data_from_file_already_analyzed**](docs/FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | +*FieldDataResourceApi* | [**create_new_field_data_from_simulation**](docs/FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. +*FieldDataResourceApi* | [**delete_field_data**](docs/FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. +*FieldDataResourceApi* | [**generate_field_data_estimate**](docs/FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | +*FieldDataResourceApi* | [**get_all_field_data**](docs/FieldDataResourceApi.md#get_all_field_data) | **GET** /api/v1/fieldData | Get all of the field data for that user. *HelloWorldApi* | [**get_hello_world**](docs/HelloWorldApi.md#get_hello_world) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**create_publication**](docs/PublicationResourceApi.md#create_publication) | **POST** /api/v1/publications | Create publication *PublicationResourceApi* | [**delete_publication**](docs/PublicationResourceApi.md#delete_publication) | **DELETE** /api/v1/publications/{id} | Delete publication @@ -113,15 +119,28 @@ Class | Method | HTTP request | Description ## Documentation For Models - [AccesTokenRepresentationRecord](docs/AccesTokenRepresentationRecord.md) + - [AnalyzedResultsFromFieldData](docs/AnalyzedResultsFromFieldData.md) - [BatchSystemType](docs/BatchSystemType.md) - [BioModel](docs/BioModel.md) - [BiomodelRef](docs/BiomodelRef.md) + - [CartesianMesh](docs/CartesianMesh.md) + - [Coordinate](docs/Coordinate.md) - [DetailedState](docs/DetailedState.md) + - [Extent](docs/Extent.md) + - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) + - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) + - [FieldDataExternalDataIDs](docs/FieldDataExternalDataIDs.md) + - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) + - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) + - [FieldDataSaveResults](docs/FieldDataSaveResults.md) + - [GroupAccess](docs/GroupAccess.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) - [HtcJobID](docs/HtcJobID.md) + - [ISize](docs/ISize.md) - [Identity](docs/Identity.md) - [KeyValue](docs/KeyValue.md) - [MathmodelRef](docs/MathmodelRef.md) + - [Origin](docs/Origin.md) - [Publication](docs/Publication.md) - [SchedulerStatus](docs/SchedulerStatus.md) - [SimulationExecutionStatusRecord](docs/SimulationExecutionStatusRecord.md) @@ -132,11 +151,18 @@ Class | Method | HTTP request | Description - [SimulationStatusPersistentRecord](docs/SimulationStatusPersistentRecord.md) - [Status](docs/Status.md) - [StatusMessage](docs/StatusMessage.md) + - [UCDInfo](docs/UCDInfo.md) - [User](docs/User.md) - [UserIdentityJSONSafe](docs/UserIdentityJSONSafe.md) - [UserLoginInfoForMapping](docs/UserLoginInfoForMapping.md) - [UserRegistrationInfo](docs/UserRegistrationInfo.md) - [VCSimulationIdentifier](docs/VCSimulationIdentifier.md) + - [VariableDomain](docs/VariableDomain.md) + - [VariableType](docs/VariableType.md) + - [Version](docs/Version.md) + - [VersionFlag](docs/VersionFlag.md) + - [VersionableType](docs/VersionableType.md) + - [VersionableTypeVersion](docs/VersionableTypeVersion.md) diff --git a/python-restclient/docs/AnalyzedResultsFromFieldData.md b/python-restclient/docs/AnalyzedResultsFromFieldData.md new file mode 100644 index 0000000000..3a5a347df8 --- /dev/null +++ b/python-restclient/docs/AnalyzedResultsFromFieldData.md @@ -0,0 +1,35 @@ +# AnalyzedResultsFromFieldData + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**short_spec_data** | **List[List[List[int]]]** | | [optional] +**var_names** | **List[str]** | | [optional] +**times** | **List[float]** | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**extent** | [**Extent**](Extent.md) | | [optional] +**isize** | [**ISize**](ISize.md) | | [optional] +**annotation** | **str** | | [optional] +**name** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData + +# TODO update the JSON string below +json = "{}" +# create an instance of AnalyzedResultsFromFieldData from a JSON string +analyzed_results_from_field_data_instance = AnalyzedResultsFromFieldData.from_json(json) +# print the JSON string representation of the object +print AnalyzedResultsFromFieldData.to_json() + +# convert the object into a dict +analyzed_results_from_field_data_dict = analyzed_results_from_field_data_instance.to_dict() +# create an instance of AnalyzedResultsFromFieldData from a dict +analyzed_results_from_field_data_form_dict = analyzed_results_from_field_data.from_dict(analyzed_results_from_field_data_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/BioModelResourceApi.md b/python-restclient/docs/BioModelResourceApi.md index 5f1a6b4969..7fb0b2e4b9 100644 --- a/python-restclient/docs/BioModelResourceApi.md +++ b/python-restclient/docs/BioModelResourceApi.md @@ -132,7 +132,8 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | OK | - | +**200** | return BioModel information in JSON format | - | +**404** | BioModel not found | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/CartesianMesh.md b/python-restclient/docs/CartesianMesh.md new file mode 100644 index 0000000000..f3dfb9052f --- /dev/null +++ b/python-restclient/docs/CartesianMesh.md @@ -0,0 +1,43 @@ +# CartesianMesh + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**compressed_bytes** | **bytearray** | | [optional] +**u_cd_info** | [**UCDInfo**](UCDInfo.md) | | [optional] +**geometry_dimension** | **int** | | [optional] +**volume_region_map_subvolume** | **Dict[str, int]** | | [optional] +**membrane_region_map_subvolumes_in_out** | **Dict[str, object]** | | [optional] +**num_membrane_elements** | **int** | | [optional] +**num_membrane_regions** | **int** | | [optional] +**num_volume_elements** | **int** | | [optional] +**num_volume_regions** | **int** | | [optional] +**i_size** | [**ISize**](ISize.md) | | [optional] +**size_x** | **int** | | [optional] +**size_y** | **int** | | [optional] +**size_z** | **int** | | [optional] +**membrane_connectivity_ok** | **bool** | | [optional] +**output_fields** | **List[object]** | | [optional] +**chombo_mesh** | **bool** | | [optional] + +## Example + +```python +from vcell_client.models.cartesian_mesh import CartesianMesh + +# TODO update the JSON string below +json = "{}" +# create an instance of CartesianMesh from a JSON string +cartesian_mesh_instance = CartesianMesh.from_json(json) +# print the JSON string representation of the object +print CartesianMesh.to_json() + +# convert the object into a dict +cartesian_mesh_dict = cartesian_mesh_instance.to_dict() +# create an instance of CartesianMesh from a dict +cartesian_mesh_form_dict = cartesian_mesh.from_dict(cartesian_mesh_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/Coordinate.md b/python-restclient/docs/Coordinate.md new file mode 100644 index 0000000000..c5c51eb0f7 --- /dev/null +++ b/python-restclient/docs/Coordinate.md @@ -0,0 +1,30 @@ +# Coordinate + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**x** | **float** | | [optional] +**y** | **float** | | [optional] +**z** | **float** | | [optional] + +## Example + +```python +from vcell_client.models.coordinate import Coordinate + +# TODO update the JSON string below +json = "{}" +# create an instance of Coordinate from a JSON string +coordinate_instance = Coordinate.from_json(json) +# print the JSON string representation of the object +print Coordinate.to_json() + +# convert the object into a dict +coordinate_dict = coordinate_instance.to_dict() +# create an instance of Coordinate from a dict +coordinate_form_dict = coordinate.from_dict(coordinate_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/Extent.md b/python-restclient/docs/Extent.md new file mode 100644 index 0000000000..3f6be0783c --- /dev/null +++ b/python-restclient/docs/Extent.md @@ -0,0 +1,30 @@ +# Extent + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**x** | **float** | | [optional] +**y** | **float** | | [optional] +**z** | **float** | | [optional] + +## Example + +```python +from vcell_client.models.extent import Extent + +# TODO update the JSON string below +json = "{}" +# create an instance of Extent from a JSON string +extent_instance = Extent.from_json(json) +# print the JSON string representation of the object +print Extent.to_json() + +# convert the object into a dict +extent_dict = extent_instance.to_dict() +# create an instance of Extent from a dict +extent_form_dict = extent.from_dict(extent_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/ExternalDataIdentifier.md b/python-restclient/docs/ExternalDataIdentifier.md new file mode 100644 index 0000000000..a9e915209b --- /dev/null +++ b/python-restclient/docs/ExternalDataIdentifier.md @@ -0,0 +1,35 @@ +# ExternalDataIdentifier + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**key** | [**KeyValue**](KeyValue.md) | | [optional] +**owner** | [**User**](User.md) | | [optional] +**name** | **str** | | [optional] +**i_d** | **str** | | [optional] +**job_index** | **int** | | [optional] +**simulation_key** | [**KeyValue**](KeyValue.md) | | [optional] +**parameter_scan_type** | **bool** | | [optional] +**data_key** | [**KeyValue**](KeyValue.md) | | [optional] + +## Example + +```python +from vcell_client.models.external_data_identifier import ExternalDataIdentifier + +# TODO update the JSON string below +json = "{}" +# create an instance of ExternalDataIdentifier from a JSON string +external_data_identifier_instance = ExternalDataIdentifier.from_json(json) +# print the JSON string representation of the object +print ExternalDataIdentifier.to_json() + +# convert the object into a dict +external_data_identifier_dict = external_data_identifier_instance.to_dict() +# create an instance of ExternalDataIdentifier from a dict +external_data_identifier_form_dict = external_data_identifier.from_dict(external_data_identifier_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataDBOperationSpec.md b/python-restclient/docs/FieldDataDBOperationSpec.md new file mode 100644 index 0000000000..7a63c0ef01 --- /dev/null +++ b/python-restclient/docs/FieldDataDBOperationSpec.md @@ -0,0 +1,35 @@ +# FieldDataDBOperationSpec + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**op_type** | **int** | | [optional] +**spec_edi** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] +**owner** | [**User**](User.md) | | [optional] +**new_ext_data_id_name** | **str** | | [optional] +**annotation** | **str** | | [optional] +**source_names** | **List[str]** | | [optional] +**source_owner** | [**VersionableTypeVersion**](VersionableTypeVersion.md) | | [optional] +**b_include_sim_refs** | **bool** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataDBOperationSpec from a JSON string +field_data_db_operation_spec_instance = FieldDataDBOperationSpec.from_json(json) +# print the JSON string representation of the object +print FieldDataDBOperationSpec.to_json() + +# convert the object into a dict +field_data_db_operation_spec_dict = field_data_db_operation_spec_instance.to_dict() +# create an instance of FieldDataDBOperationSpec from a dict +field_data_db_operation_spec_form_dict = field_data_db_operation_spec.from_dict(field_data_db_operation_spec_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataExternalDataIDs.md b/python-restclient/docs/FieldDataExternalDataIDs.md new file mode 100644 index 0000000000..bfb424c0ef --- /dev/null +++ b/python-restclient/docs/FieldDataExternalDataIDs.md @@ -0,0 +1,30 @@ +# FieldDataExternalDataIDs + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**external_data_identifiers** | [**List[ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] +**external_data_annotations** | **List[str]** | | [optional] +**external_data_id_sim_refs** | **Dict[str, List[KeyValue]]** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataExternalDataIDs from a JSON string +field_data_external_data_ids_instance = FieldDataExternalDataIDs.from_json(json) +# print the JSON string representation of the object +print FieldDataExternalDataIDs.to_json() + +# convert the object into a dict +field_data_external_data_ids_dict = field_data_external_data_ids_instance.to_dict() +# create an instance of FieldDataExternalDataIDs from a dict +field_data_external_data_ids_form_dict = field_data_external_data_ids.from_dict(field_data_external_data_ids_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataFileOperationSpec.md b/python-restclient/docs/FieldDataFileOperationSpec.md new file mode 100644 index 0000000000..d224b948b7 --- /dev/null +++ b/python-restclient/docs/FieldDataFileOperationSpec.md @@ -0,0 +1,44 @@ +# FieldDataFileOperationSpec + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**op_type** | **int** | | [optional] +**short_spec_data** | **List[List[List[int]]]** | | [optional] +**double_spec_data** | **List[List[List[float]]]** | | [optional] +**cartesian_mesh** | [**CartesianMesh**](CartesianMesh.md) | | [optional] +**spec_edi** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] +**var_names** | **List[str]** | | [optional] +**variable_types** | [**List[VariableType]**](VariableType.md) | | [optional] +**times** | **List[float]** | | [optional] +**owner** | [**User**](User.md) | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**extent** | [**Extent**](Extent.md) | | [optional] +**isize** | [**ISize**](ISize.md) | | [optional] +**annotation** | **str** | | [optional] +**source_sim_param_scan_job_index** | **int** | | [optional] +**source_sim_data_key** | [**KeyValue**](KeyValue.md) | | [optional] +**source_owner** | [**User**](User.md) | | [optional] +**field_data_name** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataFileOperationSpec from a JSON string +field_data_file_operation_spec_instance = FieldDataFileOperationSpec.from_json(json) +# print the JSON string representation of the object +print FieldDataFileOperationSpec.to_json() + +# convert the object into a dict +field_data_file_operation_spec_dict = field_data_file_operation_spec_instance.to_dict() +# create an instance of FieldDataFileOperationSpec from a dict +field_data_file_operation_spec_form_dict = field_data_file_operation_spec.from_dict(field_data_file_operation_spec_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataNoCopyConflict.md b/python-restclient/docs/FieldDataNoCopyConflict.md new file mode 100644 index 0000000000..c7cdd6b4b0 --- /dev/null +++ b/python-restclient/docs/FieldDataNoCopyConflict.md @@ -0,0 +1,29 @@ +# FieldDataNoCopyConflict + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**old_name_new_id_hash** | [**Dict[str, ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] +**old_name_old_ext_data_id_key_hash** | [**Dict[str, KeyValue]**](KeyValue.md) | | [optional] + +## Example + +```python +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataNoCopyConflict from a JSON string +field_data_no_copy_conflict_instance = FieldDataNoCopyConflict.from_json(json) +# print the JSON string representation of the object +print FieldDataNoCopyConflict.to_json() + +# convert the object into a dict +field_data_no_copy_conflict_dict = field_data_no_copy_conflict_instance.to_dict() +# create an instance of FieldDataNoCopyConflict from a dict +field_data_no_copy_conflict_form_dict = field_data_no_copy_conflict.from_dict(field_data_no_copy_conflict_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataResourceApi.md b/python-restclient/docs/FieldDataResourceApi.md new file mode 100644 index 0000000000..4b49358464 --- /dev/null +++ b/python-restclient/docs/FieldDataResourceApi.md @@ -0,0 +1,405 @@ +# vcell_client.FieldDataResourceApi + +All URIs are relative to *https://vcell-dev.cam.uchc.edu* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**copy_field_data**](FieldDataResourceApi.md#copy_field_data) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. +[**create_new_field_data_from_file_already_analyzed**](FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | +[**create_new_field_data_from_simulation**](FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. +[**delete_field_data**](FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. +[**generate_field_data_estimate**](FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | +[**get_all_field_data**](FieldDataResourceApi.md#get_all_field_data) | **GET** /api/v1/fieldData | Get all of the field data for that user. + + +# **copy_field_data** +> FieldDataNoCopyConflict copy_field_data(field_data_db_operation_spec=field_data_db_operation_spec) + +Copy an existing field data entry. + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) + + try: + # Copy an existing field data entry. + api_response = api_instance.copy_field_data(field_data_db_operation_spec=field_data_db_operation_spec) + print("The response of FieldDataResourceApi->copy_field_data:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->copy_field_data: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] + +### Return type + +[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_new_field_data_from_file_already_analyzed** +> FieldDataSaveResults create_new_field_data_from_file_already_analyzed(analyzed_results_from_field_data=analyzed_results_from_field_data) + + + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData +from vcell_client.models.field_data_save_results import FieldDataSaveResults +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + analyzed_results_from_field_data = vcell_client.AnalyzedResultsFromFieldData() # AnalyzedResultsFromFieldData | (optional) + + try: + api_response = api_instance.create_new_field_data_from_file_already_analyzed(analyzed_results_from_field_data=analyzed_results_from_field_data) + print("The response of FieldDataResourceApi->create_new_field_data_from_file_already_analyzed:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->create_new_field_data_from_file_already_analyzed: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **analyzed_results_from_field_data** | [**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md)| | [optional] + +### Return type + +[**FieldDataSaveResults**](FieldDataSaveResults.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **create_new_field_data_from_simulation** +> ExternalDataIdentifier create_new_field_data_from_simulation(field_data_db_operation_spec=field_data_db_operation_spec) + +Create new field data from a simulation. + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) + + try: + # Create new field data from a simulation. + api_response = api_instance.create_new_field_data_from_simulation(field_data_db_operation_spec=field_data_db_operation_spec) + print("The response of FieldDataResourceApi->create_new_field_data_from_simulation:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->create_new_field_data_from_simulation: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] + +### Return type + +[**ExternalDataIdentifier**](ExternalDataIdentifier.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_field_data** +> delete_field_data(body=body) + +Delete the selected field data. + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + body = 'body_example' # str | (optional) + + try: + # Delete the selected field data. + api_instance.delete_field_data(body=body) + except Exception as e: + print("Exception when calling FieldDataResourceApi->delete_field_data: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | **str**| | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: text/plain + - **Accept**: Not defined + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | No Content | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **generate_field_data_estimate** +> FieldDataFileOperationSpec generate_field_data_estimate(file=file, file_name=file_name) + + + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + file = None # bytearray | (optional) + file_name = 'file_name_example' # str | (optional) + + try: + api_response = api_instance.generate_field_data_estimate(file=file, file_name=file_name) + print("The response of FieldDataResourceApi->generate_field_data_estimate:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->generate_field_data_estimate: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **file** | **bytearray**| | [optional] + **file_name** | **str**| | [optional] + +### Return type + +[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: multipart/form-data + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_all_field_data** +> FieldDataExternalDataIDs get_all_field_data(field_data_db_operation_spec=field_data_db_operation_spec) + +Get all of the field data for that user. + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) + + try: + # Get all of the field data for that user. + api_response = api_instance.get_all_field_data(field_data_db_operation_spec=field_data_db_operation_spec) + print("The response of FieldDataResourceApi->get_all_field_data:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->get_all_field_data: %s\n" % e) +``` + + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] + +### Return type + +[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/python-restclient/docs/FieldDataSaveResults.md b/python-restclient/docs/FieldDataSaveResults.md new file mode 100644 index 0000000000..1604a73529 --- /dev/null +++ b/python-restclient/docs/FieldDataSaveResults.md @@ -0,0 +1,29 @@ +# FieldDataSaveResults + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**field_data_name** | **str** | | [optional] +**field_data_id** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_save_results import FieldDataSaveResults + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataSaveResults from a JSON string +field_data_save_results_instance = FieldDataSaveResults.from_json(json) +# print the JSON string representation of the object +print FieldDataSaveResults.to_json() + +# convert the object into a dict +field_data_save_results_dict = field_data_save_results_instance.to_dict() +# create an instance of FieldDataSaveResults from a dict +field_data_save_results_form_dict = field_data_save_results.from_dict(field_data_save_results_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/GroupAccess.md b/python-restclient/docs/GroupAccess.md new file mode 100644 index 0000000000..69f9dc09f9 --- /dev/null +++ b/python-restclient/docs/GroupAccess.md @@ -0,0 +1,29 @@ +# GroupAccess + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**groupid** | **float** | | [optional] +**description** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.group_access import GroupAccess + +# TODO update the JSON string below +json = "{}" +# create an instance of GroupAccess from a JSON string +group_access_instance = GroupAccess.from_json(json) +# print the JSON string representation of the object +print GroupAccess.to_json() + +# convert the object into a dict +group_access_dict = group_access_instance.to_dict() +# create an instance of GroupAccess from a dict +group_access_form_dict = group_access.from_dict(group_access_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/ISize.md b/python-restclient/docs/ISize.md new file mode 100644 index 0000000000..6a5d64968b --- /dev/null +++ b/python-restclient/docs/ISize.md @@ -0,0 +1,31 @@ +# ISize + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**x** | **int** | | [optional] +**y** | **int** | | [optional] +**z** | **int** | | [optional] +**x_yz** | **int** | | [optional] + +## Example + +```python +from vcell_client.models.i_size import ISize + +# TODO update the JSON string below +json = "{}" +# create an instance of ISize from a JSON string +i_size_instance = ISize.from_json(json) +# print the JSON string representation of the object +print ISize.to_json() + +# convert the object into a dict +i_size_dict = i_size_instance.to_dict() +# create an instance of ISize from a dict +i_size_form_dict = i_size.from_dict(i_size_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/Origin.md b/python-restclient/docs/Origin.md new file mode 100644 index 0000000000..9179fbb34f --- /dev/null +++ b/python-restclient/docs/Origin.md @@ -0,0 +1,30 @@ +# Origin + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**x** | **float** | | [optional] +**y** | **float** | | [optional] +**z** | **float** | | [optional] + +## Example + +```python +from vcell_client.models.origin import Origin + +# TODO update the JSON string below +json = "{}" +# create an instance of Origin from a JSON string +origin_instance = Origin.from_json(json) +# print the JSON string representation of the object +print Origin.to_json() + +# convert the object into a dict +origin_dict = origin_instance.to_dict() +# create an instance of Origin from a dict +origin_form_dict = origin.from_dict(origin_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/UCDInfo.md b/python-restclient/docs/UCDInfo.md new file mode 100644 index 0000000000..9e958d8e97 --- /dev/null +++ b/python-restclient/docs/UCDInfo.md @@ -0,0 +1,39 @@ +# UCDInfo + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ucd_grid_nodes** | **List[List[List[Coordinate]]]** | | [optional] +**ucd_membrane_quads** | **List[List[int]]** | | [optional] +**reduced_ucd_grid_nodes_v** | [**List[Coordinate]**](Coordinate.md) | | [optional] +**u_cd_grid_nodes** | **List[List[List[Coordinate]]]** | | [optional] +**u_cd_membrane_quads** | **List[List[int]]** | | [optional] +**num_volume_nodes_x** | **int** | | [optional] +**num_volume_nodes_y** | **int** | | [optional] +**num_volume_nodes_z** | **int** | | [optional] +**num_points_xyz** | **int** | | [optional] +**num_volume_nodes_xy** | **int** | | [optional] +**num_volume_cells** | **int** | | [optional] +**num_membrane_cells** | **int** | | [optional] + +## Example + +```python +from vcell_client.models.ucd_info import UCDInfo + +# TODO update the JSON string below +json = "{}" +# create an instance of UCDInfo from a JSON string +ucd_info_instance = UCDInfo.from_json(json) +# print the JSON string representation of the object +print UCDInfo.to_json() + +# convert the object into a dict +ucd_info_dict = ucd_info_instance.to_dict() +# create an instance of UCDInfo from a dict +ucd_info_form_dict = ucd_info.from_dict(ucd_info_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/UsersResourceApi.md b/python-restclient/docs/UsersResourceApi.md index e327c19035..4260e1d68a 100644 --- a/python-restclient/docs/UsersResourceApi.md +++ b/python-restclient/docs/UsersResourceApi.md @@ -611,8 +611,8 @@ void (empty response body) |-------------|-------------|------------------| **200** | magic link sent in email if appropriate | - | **400** | unable to process request | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/VariableDomain.md b/python-restclient/docs/VariableDomain.md new file mode 100644 index 0000000000..1d41048812 --- /dev/null +++ b/python-restclient/docs/VariableDomain.md @@ -0,0 +1,10 @@ +# VariableDomain + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/VariableType.md b/python-restclient/docs/VariableType.md new file mode 100644 index 0000000000..eea17d04c2 --- /dev/null +++ b/python-restclient/docs/VariableType.md @@ -0,0 +1,36 @@ +# VariableType + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | **int** | | [optional] +**variable_domain** | [**VariableDomain**](VariableDomain.md) | | [optional] +**name** | **str** | | [optional] +**units** | **str** | | [optional] +**label** | **str** | | [optional] +**legacy_warn** | **bool** | | [optional] +**default_label** | **str** | | [optional] +**default_units** | **str** | | [optional] +**type_name** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.variable_type import VariableType + +# TODO update the JSON string below +json = "{}" +# create an instance of VariableType from a JSON string +variable_type_instance = VariableType.from_json(json) +# print the JSON string representation of the object +print VariableType.to_json() + +# convert the object into a dict +variable_type_dict = variable_type_instance.to_dict() +# create an instance of VariableType from a dict +variable_type_form_dict = variable_type.from_dict(variable_type_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/Version.md b/python-restclient/docs/Version.md new file mode 100644 index 0000000000..455ffd1372 --- /dev/null +++ b/python-restclient/docs/Version.md @@ -0,0 +1,44 @@ +# Version + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**version_key** | [**KeyValue**](KeyValue.md) | | [optional] +**version_name** | **str** | | [optional] +**version_owner** | [**User**](User.md) | | [optional] +**version_group_access** | [**GroupAccess**](GroupAccess.md) | | [optional] +**version_branch_point_ref** | [**KeyValue**](KeyValue.md) | | [optional] +**version_branch_id** | **float** | | [optional] +**version_date** | **date** | | [optional] +**version_flag** | [**VersionFlag**](VersionFlag.md) | | [optional] +**version_annot** | **str** | | [optional] +**annot** | **str** | | [optional] +**branch_id** | **float** | | [optional] +**branch_point_ref_key** | [**KeyValue**](KeyValue.md) | | [optional] +**var_date** | **date** | | [optional] +**flag** | [**VersionFlag**](VersionFlag.md) | | [optional] +**group_access** | [**GroupAccess**](GroupAccess.md) | | [optional] +**name** | **str** | | [optional] +**owner** | [**User**](User.md) | | [optional] + +## Example + +```python +from vcell_client.models.version import Version + +# TODO update the JSON string below +json = "{}" +# create an instance of Version from a JSON string +version_instance = Version.from_json(json) +# print the JSON string representation of the object +print Version.to_json() + +# convert the object into a dict +version_dict = version_instance.to_dict() +# create an instance of Version from a dict +version_form_dict = version.from_dict(version_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/VersionFlag.md b/python-restclient/docs/VersionFlag.md new file mode 100644 index 0000000000..ae72813eb1 --- /dev/null +++ b/python-restclient/docs/VersionFlag.md @@ -0,0 +1,32 @@ +# VersionFlag + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**version_flag** | **int** | | [optional] +**int_value** | **int** | | [optional] +**archived** | **bool** | | [optional] +**current** | **bool** | | [optional] +**published** | **bool** | | [optional] + +## Example + +```python +from vcell_client.models.version_flag import VersionFlag + +# TODO update the JSON string below +json = "{}" +# create an instance of VersionFlag from a JSON string +version_flag_instance = VersionFlag.from_json(json) +# print the JSON string representation of the object +print VersionFlag.to_json() + +# convert the object into a dict +version_flag_dict = version_flag_instance.to_dict() +# create an instance of VersionFlag from a dict +version_flag_form_dict = version_flag.from_dict(version_flag_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/VersionableType.md b/python-restclient/docs/VersionableType.md new file mode 100644 index 0000000000..d2908a7354 --- /dev/null +++ b/python-restclient/docs/VersionableType.md @@ -0,0 +1,35 @@ +# VersionableType + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**v_type** | **int** | | [optional] +**name** | **str** | | [optional] +**v_class** | **object** | | [optional] +**b_top_level** | **bool** | | [optional] +**code** | **int** | | [optional] +**is_top_level** | **bool** | | [optional] +**type_name** | **str** | | [optional] +**version_class** | **object** | | [optional] + +## Example + +```python +from vcell_client.models.versionable_type import VersionableType + +# TODO update the JSON string below +json = "{}" +# create an instance of VersionableType from a JSON string +versionable_type_instance = VersionableType.from_json(json) +# print the JSON string representation of the object +print VersionableType.to_json() + +# convert the object into a dict +versionable_type_dict = versionable_type_instance.to_dict() +# create an instance of VersionableType from a dict +versionable_type_form_dict = versionable_type.from_dict(versionable_type_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/VersionableTypeVersion.md b/python-restclient/docs/VersionableTypeVersion.md new file mode 100644 index 0000000000..1efb639535 --- /dev/null +++ b/python-restclient/docs/VersionableTypeVersion.md @@ -0,0 +1,29 @@ +# VersionableTypeVersion + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**v_type** | [**VersionableType**](VersionableType.md) | | [optional] +**version** | [**Version**](Version.md) | | [optional] + +## Example + +```python +from vcell_client.models.versionable_type_version import VersionableTypeVersion + +# TODO update the JSON string below +json = "{}" +# create an instance of VersionableTypeVersion from a JSON string +versionable_type_version_instance = VersionableTypeVersion.from_json(json) +# print the JSON string representation of the object +print VersionableTypeVersion.to_json() + +# convert the object into a dict +versionable_type_version_dict = versionable_type_version_instance.to_dict() +# create an instance of VersionableTypeVersion from a dict +versionable_type_version_form_dict = versionable_type_version.from_dict(versionable_type_version_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/pyproject.toml b/python-restclient/pyproject.toml index 29c773bec0..ec8675c605 100644 --- a/python-restclient/pyproject.toml +++ b/python-restclient/pyproject.toml @@ -10,14 +10,12 @@ keywords = ["OpenAPI", "OpenAPI-Generator", "VCell API"] include = ["vcell_client/py.typed"] [tool.poetry.dependencies] -python = "^3.9" +python = "^3.7" urllib3 = ">= 1.25.3" python-dateutil = ">=2.8.2" pydantic = ">=2" typing-extensions = ">=4.7.1" -requests-oauth2client = "^1.5.1" -jupyter = "^1.0.0" [tool.poetry.dev-dependencies] pytest = ">=7.2.1" @@ -29,4 +27,4 @@ requires = ["setuptools"] build-backend = "setuptools.build_meta" [tool.pylint.'MESSAGES CONTROL'] -extension-pkg-whitelist = "pydantic" \ No newline at end of file +extension-pkg-whitelist = "pydantic" diff --git a/python-restclient/test/test_analyzed_results_from_field_data.py b/python-restclient/test/test_analyzed_results_from_field_data.py new file mode 100644 index 0000000000..785f9b9781 --- /dev/null +++ b/python-restclient/test/test_analyzed_results_from_field_data.py @@ -0,0 +1,80 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData + +class TestAnalyzedResultsFromFieldData(unittest.TestCase): + """AnalyzedResultsFromFieldData unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> AnalyzedResultsFromFieldData: + """Test AnalyzedResultsFromFieldData + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `AnalyzedResultsFromFieldData` + """ + model = AnalyzedResultsFromFieldData() + if include_optional: + return AnalyzedResultsFromFieldData( + short_spec_data = [ + [ + [ + 56 + ] + ] + ], + var_names = [ + '' + ], + times = [ + 1.337 + ], + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + isize = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + annotation = '', + name = '' + ) + else: + return AnalyzedResultsFromFieldData( + ) + """ + + def testAnalyzedResultsFromFieldData(self): + """Test AnalyzedResultsFromFieldData""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_cartesian_mesh.py b/python-restclient/test/test_cartesian_mesh.py new file mode 100644 index 0000000000..fe355830b1 --- /dev/null +++ b/python-restclient/test/test_cartesian_mesh.py @@ -0,0 +1,118 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.cartesian_mesh import CartesianMesh + +class TestCartesianMesh(unittest.TestCase): + """CartesianMesh unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> CartesianMesh: + """Test CartesianMesh + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `CartesianMesh` + """ + model = CartesianMesh() + if include_optional: + return CartesianMesh( + compressed_bytes = bytes(b'blah'), + u_cd_info = vcell_client.models.ucd_info.UCDInfo( + ucd_grid_nodes = [ + [ + [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ] + ] + ], + ucd_membrane_quads = [ + [ + 56 + ] + ], + reduced_ucd_grid_nodes_v = [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ], + u_cd_grid_nodes = [ + [ + [ + + ] + ] + ], + u_cd_membrane_quads = [ + [ + 56 + ] + ], + num_volume_nodes_x = 56, + num_volume_nodes_y = 56, + num_volume_nodes_z = 56, + num_points_xyz = 56, + num_volume_nodes_xy = 56, + num_volume_cells = 56, + num_membrane_cells = 56, ), + geometry_dimension = 56, + volume_region_map_subvolume = { + 'key' : 56 + }, + membrane_region_map_subvolumes_in_out = { + 'key' : null + }, + num_membrane_elements = 56, + num_membrane_regions = 56, + num_volume_elements = 56, + num_volume_regions = 56, + i_size = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + size_x = 56, + size_y = 56, + size_z = 56, + membrane_connectivity_ok = True, + output_fields = [ + null + ], + chombo_mesh = True + ) + else: + return CartesianMesh( + ) + """ + + def testCartesianMesh(self): + """Test CartesianMesh""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_coordinate.py b/python-restclient/test/test_coordinate.py new file mode 100644 index 0000000000..a489a4e76c --- /dev/null +++ b/python-restclient/test/test_coordinate.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.coordinate import Coordinate + +class TestCoordinate(unittest.TestCase): + """Coordinate unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> Coordinate: + """Test Coordinate + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `Coordinate` + """ + model = Coordinate() + if include_optional: + return Coordinate( + x = 1.337, + y = 1.337, + z = 1.337 + ) + else: + return Coordinate( + ) + """ + + def testCoordinate(self): + """Test Coordinate""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_extent.py b/python-restclient/test/test_extent.py new file mode 100644 index 0000000000..5bb8ef6a3f --- /dev/null +++ b/python-restclient/test/test_extent.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.extent import Extent + +class TestExtent(unittest.TestCase): + """Extent unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> Extent: + """Test Extent + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `Extent` + """ + model = Extent() + if include_optional: + return Extent( + x = 1.337, + y = 1.337, + z = 1.337 + ) + else: + return Extent( + ) + """ + + def testExtent(self): + """Test Extent""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_external_data_identifier.py b/python-restclient/test/test_external_data_identifier.py new file mode 100644 index 0000000000..ff3a9136fe --- /dev/null +++ b/python-restclient/test/test_external_data_identifier.py @@ -0,0 +1,70 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.external_data_identifier import ExternalDataIdentifier + +class TestExternalDataIdentifier(unittest.TestCase): + """ExternalDataIdentifier unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> ExternalDataIdentifier: + """Test ExternalDataIdentifier + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `ExternalDataIdentifier` + """ + model = ExternalDataIdentifier() + if include_optional: + return ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + parameter_scan_type = True, + data_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ) + ) + else: + return ExternalDataIdentifier( + ) + """ + + def testExternalDataIdentifier(self): + """Test ExternalDataIdentifier""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_db_operation_spec.py b/python-restclient/test/test_field_data_db_operation_spec.py new file mode 100644 index 0000000000..e2d11e9eed --- /dev/null +++ b/python-restclient/test/test_field_data_db_operation_spec.py @@ -0,0 +1,131 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec + +class TestFieldDataDBOperationSpec(unittest.TestCase): + """FieldDataDBOperationSpec unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataDBOperationSpec: + """Test FieldDataDBOperationSpec + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataDBOperationSpec` + """ + model = FieldDataDBOperationSpec() + if include_optional: + return FieldDataDBOperationSpec( + op_type = 56, + spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ), + owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + new_ext_data_id_name = '', + annotation = '', + source_names = [ + '' + ], + source_owner = vcell_client.models.versionable_type_version.VersionableTypeVersion( + v_type = vcell_client.models.versionable_type.VersionableType( + name = '', + v_class = vcell_client.models.v_class.vClass(), + b_top_level = True, + code = 56, + is_top_level = True, + type_name = '', + version_class = vcell_client.models.version_class.versionClass(), ), + version = vcell_client.models.version.Version( + version_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + version_name = '', + version_owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = , + name = '', + test_account = True, ), + version_group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + version_branch_point_ref = , + version_branch_id = 1.337, + version_date = 'Thu Mar 10 00:00:00 UTC 2022', + version_flag = vcell_client.models.version_flag.VersionFlag( + int_value = 56, + archived = True, + current = True, + published = True, ), + version_annot = '', + annot = '', + branch_id = 1.337, + branch_point_ref_key = , + date = 'Thu Mar 10 00:00:00 UTC 2022', + flag = vcell_client.models.version_flag.VersionFlag( + int_value = 56, + archived = True, + current = True, + published = True, ), + group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + name = '', + owner = vcell_client.models.user.User( + user_name = '', + name = '', + test_account = True, ), ), ), + b_include_sim_refs = True + ) + else: + return FieldDataDBOperationSpec( + ) + """ + + def testFieldDataDBOperationSpec(self): + """Test FieldDataDBOperationSpec""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_external_data_ids.py b/python-restclient/test/test_field_data_external_data_ids.py new file mode 100644 index 0000000000..5bf523de21 --- /dev/null +++ b/python-restclient/test/test_field_data_external_data_ids.py @@ -0,0 +1,78 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs + +class TestFieldDataExternalDataIDs(unittest.TestCase): + """FieldDataExternalDataIDs unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataExternalDataIDs: + """Test FieldDataExternalDataIDs + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataExternalDataIDs` + """ + model = FieldDataExternalDataIDs() + if include_optional: + return FieldDataExternalDataIDs( + external_data_identifiers = [ + vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ) + ], + external_data_annotations = [ + '' + ], + external_data_id_sim_refs = { + 'key' : [ + vcell_client.models.key_value.KeyValue( + value = 1.337, ) + ] + } + ) + else: + return FieldDataExternalDataIDs( + ) + """ + + def testFieldDataExternalDataIDs(self): + """Test FieldDataExternalDataIDs""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_file_operation_spec.py b/python-restclient/test/test_field_data_file_operation_spec.py new file mode 100644 index 0000000000..6cc0716e98 --- /dev/null +++ b/python-restclient/test/test_field_data_file_operation_spec.py @@ -0,0 +1,201 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec + +class TestFieldDataFileOperationSpec(unittest.TestCase): + """FieldDataFileOperationSpec unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataFileOperationSpec: + """Test FieldDataFileOperationSpec + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataFileOperationSpec` + """ + model = FieldDataFileOperationSpec() + if include_optional: + return FieldDataFileOperationSpec( + op_type = 56, + short_spec_data = [ + [ + [ + 56 + ] + ] + ], + double_spec_data = [ + [ + [ + 1.337 + ] + ] + ], + cartesian_mesh = vcell_client.models.cartesian_mesh.CartesianMesh( + compressed_bytes = bytes(b'blah'), + u_cd_info = vcell_client.models.ucd_info.UCDInfo( + ucd_grid_nodes = [ + [ + [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ] + ] + ], + ucd_membrane_quads = [ + [ + 56 + ] + ], + reduced_ucd_grid_nodes_v = [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ], + u_cd_grid_nodes = [ + [ + [ + + ] + ] + ], + u_cd_membrane_quads = [ + [ + 56 + ] + ], + num_volume_nodes_x = 56, + num_volume_nodes_y = 56, + num_volume_nodes_z = 56, + num_points_xyz = 56, + num_volume_nodes_xy = 56, + num_volume_cells = 56, + num_membrane_cells = 56, ), + geometry_dimension = 56, + volume_region_map_subvolume = { + 'key' : 56 + }, + membrane_region_map_subvolumes_in_out = { + 'key' : null + }, + num_membrane_elements = 56, + num_membrane_regions = 56, + num_volume_elements = 56, + num_volume_regions = 56, + i_size = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + size_x = 56, + size_y = 56, + size_z = 56, + membrane_connectivity_ok = True, + output_fields = [ + null + ], + chombo_mesh = True, ), + spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ), + var_names = [ + '' + ], + variable_types = [ + vcell_client.models.variable_type.VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '', ) + ], + times = [ + 1.337 + ], + owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + isize = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + annotation = '', + source_sim_param_scan_job_index = 56, + source_sim_data_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + source_owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + field_data_name = '' + ) + else: + return FieldDataFileOperationSpec( + ) + """ + + def testFieldDataFileOperationSpec(self): + """Test FieldDataFileOperationSpec""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_no_copy_conflict.py b/python-restclient/test/test_field_data_no_copy_conflict.py new file mode 100644 index 0000000000..559aa101cd --- /dev/null +++ b/python-restclient/test/test_field_data_no_copy_conflict.py @@ -0,0 +1,73 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict + +class TestFieldDataNoCopyConflict(unittest.TestCase): + """FieldDataNoCopyConflict unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataNoCopyConflict: + """Test FieldDataNoCopyConflict + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataNoCopyConflict` + """ + model = FieldDataNoCopyConflict() + if include_optional: + return FieldDataNoCopyConflict( + old_name_new_id_hash = { + 'key' : vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ) + }, + old_name_old_ext_data_id_key_hash = { + 'key' : vcell_client.models.key_value.KeyValue( + value = 1.337, ) + } + ) + else: + return FieldDataNoCopyConflict( + ) + """ + + def testFieldDataNoCopyConflict(self): + """Test FieldDataNoCopyConflict""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_resource_api.py b/python-restclient/test/test_field_data_resource_api.py new file mode 100644 index 0000000000..f74177f6ca --- /dev/null +++ b/python-restclient/test/test_field_data_resource_api.py @@ -0,0 +1,72 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from vcell_client.api.field_data_resource_api import FieldDataResourceApi + + +class TestFieldDataResourceApi(unittest.TestCase): + """FieldDataResourceApi unit test stubs""" + + def setUp(self) -> None: + self.api = FieldDataResourceApi() + + def tearDown(self) -> None: + pass + + def test_copy_field_data(self) -> None: + """Test case for copy_field_data + + Copy an existing field data entry. + """ + pass + + def test_create_new_field_data_from_file_already_analyzed(self) -> None: + """Test case for create_new_field_data_from_file_already_analyzed + + """ + pass + + def test_create_new_field_data_from_simulation(self) -> None: + """Test case for create_new_field_data_from_simulation + + Create new field data from a simulation. + """ + pass + + def test_delete_field_data(self) -> None: + """Test case for delete_field_data + + Delete the selected field data. + """ + pass + + def test_generate_field_data_estimate(self) -> None: + """Test case for generate_field_data_estimate + + """ + pass + + def test_get_all_field_data(self) -> None: + """Test case for get_all_field_data + + Get all of the field data for that user. + """ + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_save_results.py b/python-restclient/test/test_field_data_save_results.py new file mode 100644 index 0000000000..487181bb30 --- /dev/null +++ b/python-restclient/test/test_field_data_save_results.py @@ -0,0 +1,54 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_save_results import FieldDataSaveResults + +class TestFieldDataSaveResults(unittest.TestCase): + """FieldDataSaveResults unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataSaveResults: + """Test FieldDataSaveResults + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataSaveResults` + """ + model = FieldDataSaveResults() + if include_optional: + return FieldDataSaveResults( + field_data_name = '', + field_data_id = '' + ) + else: + return FieldDataSaveResults( + ) + """ + + def testFieldDataSaveResults(self): + """Test FieldDataSaveResults""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_group_access.py b/python-restclient/test/test_group_access.py new file mode 100644 index 0000000000..164ba10d93 --- /dev/null +++ b/python-restclient/test/test_group_access.py @@ -0,0 +1,54 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.group_access import GroupAccess + +class TestGroupAccess(unittest.TestCase): + """GroupAccess unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> GroupAccess: + """Test GroupAccess + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `GroupAccess` + """ + model = GroupAccess() + if include_optional: + return GroupAccess( + groupid = 1.337, + description = '' + ) + else: + return GroupAccess( + ) + """ + + def testGroupAccess(self): + """Test GroupAccess""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_i_size.py b/python-restclient/test/test_i_size.py new file mode 100644 index 0000000000..c280acad52 --- /dev/null +++ b/python-restclient/test/test_i_size.py @@ -0,0 +1,56 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.i_size import ISize + +class TestISize(unittest.TestCase): + """ISize unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> ISize: + """Test ISize + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `ISize` + """ + model = ISize() + if include_optional: + return ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56 + ) + else: + return ISize( + ) + """ + + def testISize(self): + """Test ISize""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_origin.py b/python-restclient/test/test_origin.py new file mode 100644 index 0000000000..0b90b202c8 --- /dev/null +++ b/python-restclient/test/test_origin.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.origin import Origin + +class TestOrigin(unittest.TestCase): + """Origin unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> Origin: + """Test Origin + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `Origin` + """ + model = Origin() + if include_optional: + return Origin( + x = 1.337, + y = 1.337, + z = 1.337 + ) + else: + return Origin( + ) + """ + + def testOrigin(self): + """Test Origin""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_ucd_info.py b/python-restclient/test/test_ucd_info.py new file mode 100644 index 0000000000..b90f1f0253 --- /dev/null +++ b/python-restclient/test/test_ucd_info.py @@ -0,0 +1,95 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.ucd_info import UCDInfo + +class TestUCDInfo(unittest.TestCase): + """UCDInfo unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> UCDInfo: + """Test UCDInfo + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `UCDInfo` + """ + model = UCDInfo() + if include_optional: + return UCDInfo( + ucd_grid_nodes = [ + [ + [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ] + ] + ], + ucd_membrane_quads = [ + [ + 56 + ] + ], + reduced_ucd_grid_nodes_v = [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ], + u_cd_grid_nodes = [ + [ + [ + vcell_client.models.coordinate.Coordinate( + x = 1.337, + y = 1.337, + z = 1.337, ) + ] + ] + ], + u_cd_membrane_quads = [ + [ + 56 + ] + ], + num_volume_nodes_x = 56, + num_volume_nodes_y = 56, + num_volume_nodes_z = 56, + num_points_xyz = 56, + num_volume_nodes_xy = 56, + num_volume_cells = 56, + num_membrane_cells = 56 + ) + else: + return UCDInfo( + ) + """ + + def testUCDInfo(self): + """Test UCDInfo""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_variable_domain.py b/python-restclient/test/test_variable_domain.py new file mode 100644 index 0000000000..fd61ff28dd --- /dev/null +++ b/python-restclient/test/test_variable_domain.py @@ -0,0 +1,35 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.variable_domain import VariableDomain + +class TestVariableDomain(unittest.TestCase): + """VariableDomain unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testVariableDomain(self): + """Test VariableDomain""" + # inst = VariableDomain() + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_variable_type.py b/python-restclient/test/test_variable_type.py new file mode 100644 index 0000000000..496c7c4149 --- /dev/null +++ b/python-restclient/test/test_variable_type.py @@ -0,0 +1,61 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.variable_type import VariableType + +class TestVariableType(unittest.TestCase): + """VariableType unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> VariableType: + """Test VariableType + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `VariableType` + """ + model = VariableType() + if include_optional: + return VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '' + ) + else: + return VariableType( + ) + """ + + def testVariableType(self): + """Test VariableType""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_version.py b/python-restclient/test/test_version.py new file mode 100644 index 0000000000..8a8ce72015 --- /dev/null +++ b/python-restclient/test/test_version.py @@ -0,0 +1,99 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.version import Version + +class TestVersion(unittest.TestCase): + """Version unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> Version: + """Test Version + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `Version` + """ + model = Version() + if include_optional: + return Version( + version_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + version_name = '', + version_owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + version_group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + version_branch_point_ref = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + version_branch_id = 1.337, + version_date = 'Thu Mar 10 00:00:00 UTC 2022', + version_flag = vcell_client.models.version_flag.VersionFlag( + int_value = 56, + archived = True, + current = True, + published = True, ), + version_annot = '', + annot = '', + branch_id = 1.337, + branch_point_ref_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + var_date = 'Thu Mar 10 00:00:00 UTC 2022', + flag = vcell_client.models.version_flag.VersionFlag( + version_flag = 56, + int_value = 56, + archived = True, + current = True, + published = True, ), + group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + name = '', + owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ) + ) + else: + return Version( + ) + """ + + def testVersion(self): + """Test Version""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_version_flag.py b/python-restclient/test/test_version_flag.py new file mode 100644 index 0000000000..e35efa4a9c --- /dev/null +++ b/python-restclient/test/test_version_flag.py @@ -0,0 +1,57 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.version_flag import VersionFlag + +class TestVersionFlag(unittest.TestCase): + """VersionFlag unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> VersionFlag: + """Test VersionFlag + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `VersionFlag` + """ + model = VersionFlag() + if include_optional: + return VersionFlag( + version_flag = 56, + int_value = 56, + archived = True, + current = True, + published = True + ) + else: + return VersionFlag( + ) + """ + + def testVersionFlag(self): + """Test VersionFlag""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_versionable_type.py b/python-restclient/test/test_versionable_type.py new file mode 100644 index 0000000000..3ae22afa60 --- /dev/null +++ b/python-restclient/test/test_versionable_type.py @@ -0,0 +1,60 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.versionable_type import VersionableType + +class TestVersionableType(unittest.TestCase): + """VersionableType unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> VersionableType: + """Test VersionableType + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `VersionableType` + """ + model = VersionableType() + if include_optional: + return VersionableType( + v_type = 56, + name = '', + v_class = vcell_client.models.v_class.vClass(), + b_top_level = True, + code = 56, + is_top_level = True, + type_name = '', + version_class = vcell_client.models.version_class.versionClass() + ) + else: + return VersionableType( + ) + """ + + def testVersionableType(self): + """Test VersionableType""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_versionable_type_version.py b/python-restclient/test/test_versionable_type_version.py new file mode 100644 index 0000000000..a2add5cef5 --- /dev/null +++ b/python-restclient/test/test_versionable_type_version.py @@ -0,0 +1,100 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.versionable_type_version import VersionableTypeVersion + +class TestVersionableTypeVersion(unittest.TestCase): + """VersionableTypeVersion unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> VersionableTypeVersion: + """Test VersionableTypeVersion + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `VersionableTypeVersion` + """ + model = VersionableTypeVersion() + if include_optional: + return VersionableTypeVersion( + v_type = vcell_client.models.versionable_type.VersionableType( + name = '', + v_class = vcell_client.models.v_class.vClass(), + b_top_level = True, + code = 56, + is_top_level = True, + type_name = '', + version_class = vcell_client.models.version_class.versionClass(), ), + version = vcell_client.models.version.Version( + version_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + version_name = '', + version_owner = vcell_client.models.user.User( + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + i_d = , + name = '', + test_account = True, ), + version_group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + version_branch_point_ref = , + version_branch_id = 1.337, + version_date = 'Thu Mar 10 00:00:00 UTC 2022', + version_flag = vcell_client.models.version_flag.VersionFlag( + int_value = 56, + archived = True, + current = True, + published = True, ), + version_annot = '', + annot = '', + branch_id = 1.337, + branch_point_ref_key = , + date = 'Thu Mar 10 00:00:00 UTC 2022', + flag = vcell_client.models.version_flag.VersionFlag( + int_value = 56, + archived = True, + current = True, + published = True, ), + group_access = vcell_client.models.group_access.GroupAccess( + groupid = 1.337, + description = '', ), + name = '', + owner = vcell_client.models.user.User( + user_name = '', + name = '', + test_account = True, ), ) + ) + else: + return VersionableTypeVersion( + ) + """ + + def testVersionableTypeVersion(self): + """Test VersionableTypeVersion""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/vcell_client/__init__.py b/python-restclient/vcell_client/__init__.py index c80d4add41..1590d348a9 100644 --- a/python-restclient/vcell_client/__init__.py +++ b/python-restclient/vcell_client/__init__.py @@ -20,6 +20,7 @@ # import apis into sdk package from vcell_client.api.admin_resource_api import AdminResourceApi from vcell_client.api.bio_model_resource_api import BioModelResourceApi +from vcell_client.api.field_data_resource_api import FieldDataResourceApi from vcell_client.api.hello_world_api import HelloWorldApi from vcell_client.api.publication_resource_api import PublicationResourceApi from vcell_client.api.simulation_resource_api import SimulationResourceApi @@ -38,15 +39,28 @@ # import models into sdk package from vcell_client.models.acces_token_representation_record import AccesTokenRepresentationRecord +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData from vcell_client.models.batch_system_type import BatchSystemType from vcell_client.models.bio_model import BioModel from vcell_client.models.biomodel_ref import BiomodelRef +from vcell_client.models.cartesian_mesh import CartesianMesh +from vcell_client.models.coordinate import Coordinate from vcell_client.models.detailed_state import DetailedState +from vcell_client.models.extent import Extent +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_save_results import FieldDataSaveResults +from vcell_client.models.group_access import GroupAccess from vcell_client.models.hello_world_message import HelloWorldMessage from vcell_client.models.htc_job_id import HtcJobID +from vcell_client.models.i_size import ISize from vcell_client.models.identity import Identity from vcell_client.models.key_value import KeyValue from vcell_client.models.mathmodel_ref import MathmodelRef +from vcell_client.models.origin import Origin from vcell_client.models.publication import Publication from vcell_client.models.scheduler_status import SchedulerStatus from vcell_client.models.simulation_execution_status_record import SimulationExecutionStatusRecord @@ -57,8 +71,15 @@ from vcell_client.models.simulation_status_persistent_record import SimulationStatusPersistentRecord from vcell_client.models.status import Status from vcell_client.models.status_message import StatusMessage +from vcell_client.models.ucd_info import UCDInfo from vcell_client.models.user import User from vcell_client.models.user_identity_json_safe import UserIdentityJSONSafe from vcell_client.models.user_login_info_for_mapping import UserLoginInfoForMapping from vcell_client.models.user_registration_info import UserRegistrationInfo from vcell_client.models.vc_simulation_identifier import VCSimulationIdentifier +from vcell_client.models.variable_domain import VariableDomain +from vcell_client.models.variable_type import VariableType +from vcell_client.models.version import Version +from vcell_client.models.version_flag import VersionFlag +from vcell_client.models.versionable_type import VersionableType +from vcell_client.models.versionable_type_version import VersionableTypeVersion diff --git a/python-restclient/vcell_client/api/__init__.py b/python-restclient/vcell_client/api/__init__.py index 25e9b7e0ef..40db361305 100644 --- a/python-restclient/vcell_client/api/__init__.py +++ b/python-restclient/vcell_client/api/__init__.py @@ -3,6 +3,7 @@ # import apis into api package from vcell_client.api.admin_resource_api import AdminResourceApi from vcell_client.api.bio_model_resource_api import BioModelResourceApi +from vcell_client.api.field_data_resource_api import FieldDataResourceApi from vcell_client.api.hello_world_api import HelloWorldApi from vcell_client.api.publication_resource_api import PublicationResourceApi from vcell_client.api.simulation_resource_api import SimulationResourceApi diff --git a/python-restclient/vcell_client/api/bio_model_resource_api.py b/python-restclient/vcell_client/api/bio_model_resource_api.py index d2c1d51d15..c31ac2bb00 100644 --- a/python-restclient/vcell_client/api/bio_model_resource_api.py +++ b/python-restclient/vcell_client/api/bio_model_resource_api.py @@ -350,7 +350,8 @@ def get_biomodel_by_id( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "BioModel" + '200': "BioModel", + '404': None } response_data = self.api_client.call_api( @@ -417,7 +418,8 @@ def get_biomodel_by_id_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "BioModel" + '200': "BioModel", + '404': None } response_data = self.api_client.call_api( @@ -484,7 +486,8 @@ def get_biomodel_by_id_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "BioModel" + '200': "BioModel", + '404': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/api/field_data_resource_api.py b/python-restclient/vcell_client/api/field_data_resource_api.py new file mode 100644 index 0000000000..51e1de9eb8 --- /dev/null +++ b/python-restclient/vcell_client/api/field_data_resource_api.py @@ -0,0 +1,1686 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import io +import warnings + +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Dict, List, Optional, Tuple, Union, Any + +try: + from typing import Annotated +except ImportError: + from typing_extensions import Annotated + +from pydantic import StrictBytes, StrictStr + +from typing import Optional, Union + +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_save_results import FieldDataSaveResults + +from vcell_client.api_client import ApiClient +from vcell_client.api_response import ApiResponse +from vcell_client.rest import RESTResponseType + + +class FieldDataResourceApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + self.api_client = api_client + + + @validate_call + def copy_field_data( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FieldDataNoCopyConflict: + """Copy an existing field data entry. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._copy_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataNoCopyConflict" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def copy_field_data_with_http_info( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FieldDataNoCopyConflict]: + """Copy an existing field data entry. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._copy_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataNoCopyConflict" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def copy_field_data_without_preload_content( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Copy an existing field data entry. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._copy_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataNoCopyConflict" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _copy_field_data_serialize( + self, + field_data_db_operation_spec, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if field_data_db_operation_spec is not None: + _body_params = field_data_db_operation_spec + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/v1/fieldData/copy', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def create_new_field_data_from_file_already_analyzed( + self, + analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FieldDataSaveResults: + """create_new_field_data_from_file_already_analyzed + + + :param analyzed_results_from_field_data: + :type analyzed_results_from_field_data: AnalyzedResultsFromFieldData + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_file_already_analyzed_serialize( + analyzed_results_from_field_data=analyzed_results_from_field_data, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataSaveResults" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def create_new_field_data_from_file_already_analyzed_with_http_info( + self, + analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FieldDataSaveResults]: + """create_new_field_data_from_file_already_analyzed + + + :param analyzed_results_from_field_data: + :type analyzed_results_from_field_data: AnalyzedResultsFromFieldData + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_file_already_analyzed_serialize( + analyzed_results_from_field_data=analyzed_results_from_field_data, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataSaveResults" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def create_new_field_data_from_file_already_analyzed_without_preload_content( + self, + analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """create_new_field_data_from_file_already_analyzed + + + :param analyzed_results_from_field_data: + :type analyzed_results_from_field_data: AnalyzedResultsFromFieldData + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_file_already_analyzed_serialize( + analyzed_results_from_field_data=analyzed_results_from_field_data, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataSaveResults" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _create_new_field_data_from_file_already_analyzed_serialize( + self, + analyzed_results_from_field_data, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if analyzed_results_from_field_data is not None: + _body_params = analyzed_results_from_field_data + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def create_new_field_data_from_simulation( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ExternalDataIdentifier: + """Create new field data from a simulation. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_simulation_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "ExternalDataIdentifier" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def create_new_field_data_from_simulation_with_http_info( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[ExternalDataIdentifier]: + """Create new field data from a simulation. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_simulation_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "ExternalDataIdentifier" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def create_new_field_data_from_simulation_without_preload_content( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Create new field data from a simulation. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._create_new_field_data_from_simulation_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "ExternalDataIdentifier" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _create_new_field_data_from_simulation_serialize( + self, + field_data_db_operation_spec, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if field_data_db_operation_spec is not None: + _body_params = field_data_db_operation_spec + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/v1/fieldData/createFieldDataFromSimulation', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def delete_field_data( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> None: + """Delete the selected field data. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_field_data_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def delete_field_data_with_http_info( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[None]: + """Delete the selected field data. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_field_data_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def delete_field_data_without_preload_content( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Delete the selected field data. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_field_data_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_field_data_serialize( + self, + body, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if body is not None: + _body_params = body + + + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'text/plain' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='DELETE', + resource_path='/api/v1/fieldData', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def generate_field_data_estimate( + self, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FieldDataFileOperationSpec: + """generate_field_data_estimate + + + :param file: + :type file: bytearray + :param file_name: + :type file_name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._generate_field_data_estimate_serialize( + file=file, + file_name=file_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataFileOperationSpec" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def generate_field_data_estimate_with_http_info( + self, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FieldDataFileOperationSpec]: + """generate_field_data_estimate + + + :param file: + :type file: bytearray + :param file_name: + :type file_name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._generate_field_data_estimate_serialize( + file=file, + file_name=file_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataFileOperationSpec" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def generate_field_data_estimate_without_preload_content( + self, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """generate_field_data_estimate + + + :param file: + :type file: bytearray + :param file_name: + :type file_name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._generate_field_data_estimate_serialize( + file=file, + file_name=file_name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataFileOperationSpec" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _generate_field_data_estimate_serialize( + self, + file, + file_name, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + if file is not None: + _files['file'] = file + if file_name is not None: + _form_params.append(('fileName', file_name)) + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'multipart/form-data' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/v1/fieldData/createFieldDataFromFile', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def get_all_field_data( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FieldDataExternalDataIDs: + """Get all of the field data for that user. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_all_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataExternalDataIDs" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def get_all_field_data_with_http_info( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FieldDataExternalDataIDs]: + """Get all of the field data for that user. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_all_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataExternalDataIDs" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def get_all_field_data_without_preload_content( + self, + field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Get all of the field data for that user. + + + :param field_data_db_operation_spec: + :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_all_field_data_serialize( + field_data_db_operation_spec=field_data_db_operation_spec, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataExternalDataIDs" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_all_field_data_serialize( + self, + field_data_db_operation_spec, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if field_data_db_operation_spec is not None: + _body_params = field_data_db_operation_spec + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/fieldData', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/python-restclient/vcell_client/models/__init__.py b/python-restclient/vcell_client/models/__init__.py index 99eb63d427..d7e25cae50 100644 --- a/python-restclient/vcell_client/models/__init__.py +++ b/python-restclient/vcell_client/models/__init__.py @@ -16,15 +16,28 @@ # import models into model package from vcell_client.models.acces_token_representation_record import AccesTokenRepresentationRecord +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData from vcell_client.models.batch_system_type import BatchSystemType from vcell_client.models.bio_model import BioModel from vcell_client.models.biomodel_ref import BiomodelRef +from vcell_client.models.cartesian_mesh import CartesianMesh +from vcell_client.models.coordinate import Coordinate from vcell_client.models.detailed_state import DetailedState +from vcell_client.models.extent import Extent +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec +from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs +from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_save_results import FieldDataSaveResults +from vcell_client.models.group_access import GroupAccess from vcell_client.models.hello_world_message import HelloWorldMessage from vcell_client.models.htc_job_id import HtcJobID +from vcell_client.models.i_size import ISize from vcell_client.models.identity import Identity from vcell_client.models.key_value import KeyValue from vcell_client.models.mathmodel_ref import MathmodelRef +from vcell_client.models.origin import Origin from vcell_client.models.publication import Publication from vcell_client.models.scheduler_status import SchedulerStatus from vcell_client.models.simulation_execution_status_record import SimulationExecutionStatusRecord @@ -35,8 +48,15 @@ from vcell_client.models.simulation_status_persistent_record import SimulationStatusPersistentRecord from vcell_client.models.status import Status from vcell_client.models.status_message import StatusMessage +from vcell_client.models.ucd_info import UCDInfo from vcell_client.models.user import User from vcell_client.models.user_identity_json_safe import UserIdentityJSONSafe from vcell_client.models.user_login_info_for_mapping import UserLoginInfoForMapping from vcell_client.models.user_registration_info import UserRegistrationInfo from vcell_client.models.vc_simulation_identifier import VCSimulationIdentifier +from vcell_client.models.variable_domain import VariableDomain +from vcell_client.models.variable_type import VariableType +from vcell_client.models.version import Version +from vcell_client.models.version_flag import VersionFlag +from vcell_client.models.versionable_type import VersionableType +from vcell_client.models.versionable_type_version import VersionableTypeVersion diff --git a/python-restclient/vcell_client/models/analyzed_results_from_field_data.py b/python-restclient/vcell_client/models/analyzed_results_from_field_data.py new file mode 100644 index 0000000000..4403bd72a6 --- /dev/null +++ b/python-restclient/vcell_client/models/analyzed_results_from_field_data.py @@ -0,0 +1,120 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.extent import Extent +from vcell_client.models.i_size import ISize +from vcell_client.models.origin import Origin +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class AnalyzedResultsFromFieldData(BaseModel): + """ + AnalyzedResultsFromFieldData + """ # noqa: E501 + short_spec_data: Optional[List[List[List[StrictInt]]]] = Field(default=None, alias="shortSpecData") + var_names: Optional[List[StrictStr]] = Field(default=None, alias="varNames") + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + origin: Optional[Origin] = None + extent: Optional[Extent] = None + isize: Optional[ISize] = None + annotation: Optional[StrictStr] = None + name: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["shortSpecData", "varNames", "times", "origin", "extent", "isize", "annotation", "name"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of AnalyzedResultsFromFieldData from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of isize + if self.isize: + _dict['isize'] = self.isize.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of AnalyzedResultsFromFieldData from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in AnalyzedResultsFromFieldData) in the input: " + _key) + + _obj = cls.model_validate({ + "shortSpecData": obj.get("shortSpecData"), + "varNames": obj.get("varNames"), + "times": obj.get("times"), + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, + "annotation": obj.get("annotation"), + "name": obj.get("name") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/cartesian_mesh.py b/python-restclient/vcell_client/models/cartesian_mesh.py new file mode 100644 index 0000000000..95a66356b0 --- /dev/null +++ b/python-restclient/vcell_client/models/cartesian_mesh.py @@ -0,0 +1,132 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictBool, StrictBytes, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.i_size import ISize +from vcell_client.models.ucd_info import UCDInfo +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class CartesianMesh(BaseModel): + """ + CartesianMesh + """ # noqa: E501 + compressed_bytes: Optional[Union[StrictBytes, StrictStr]] = Field(default=None, alias="compressedBytes") + u_cd_info: Optional[UCDInfo] = Field(default=None, alias="uCDInfo") + geometry_dimension: Optional[StrictInt] = Field(default=None, alias="geometryDimension") + volume_region_map_subvolume: Optional[Dict[str, StrictInt]] = Field(default=None, alias="volumeRegionMapSubvolume") + membrane_region_map_subvolumes_in_out: Optional[Dict[str, Any]] = Field(default=None, alias="membraneRegionMapSubvolumesInOut") + num_membrane_elements: Optional[StrictInt] = Field(default=None, alias="numMembraneElements") + num_membrane_regions: Optional[StrictInt] = Field(default=None, alias="numMembraneRegions") + num_volume_elements: Optional[StrictInt] = Field(default=None, alias="numVolumeElements") + num_volume_regions: Optional[StrictInt] = Field(default=None, alias="numVolumeRegions") + i_size: Optional[ISize] = Field(default=None, alias="iSize") + size_x: Optional[StrictInt] = Field(default=None, alias="sizeX") + size_y: Optional[StrictInt] = Field(default=None, alias="sizeY") + size_z: Optional[StrictInt] = Field(default=None, alias="sizeZ") + membrane_connectivity_ok: Optional[StrictBool] = Field(default=None, alias="membraneConnectivityOK") + output_fields: Optional[List[Any]] = Field(default=None, alias="outputFields") + chombo_mesh: Optional[StrictBool] = Field(default=None, alias="chomboMesh") + __properties: ClassVar[List[str]] = ["compressedBytes", "uCDInfo", "geometryDimension", "volumeRegionMapSubvolume", "membraneRegionMapSubvolumesInOut", "numMembraneElements", "numMembraneRegions", "numVolumeElements", "numVolumeRegions", "iSize", "sizeX", "sizeY", "sizeZ", "membraneConnectivityOK", "outputFields", "chomboMesh"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of CartesianMesh from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of u_cd_info + if self.u_cd_info: + _dict['uCDInfo'] = self.u_cd_info.to_dict() + # override the default output from pydantic by calling `to_dict()` of i_size + if self.i_size: + _dict['iSize'] = self.i_size.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of CartesianMesh from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in CartesianMesh) in the input: " + _key) + + _obj = cls.model_validate({ + "compressedBytes": obj.get("compressedBytes"), + "uCDInfo": UCDInfo.from_dict(obj.get("uCDInfo")) if obj.get("uCDInfo") is not None else None, + "geometryDimension": obj.get("geometryDimension"), + "volumeRegionMapSubvolume": obj.get("volumeRegionMapSubvolume"), + "membraneRegionMapSubvolumesInOut": obj.get("membraneRegionMapSubvolumesInOut"), + "numMembraneElements": obj.get("numMembraneElements"), + "numMembraneRegions": obj.get("numMembraneRegions"), + "numVolumeElements": obj.get("numVolumeElements"), + "numVolumeRegions": obj.get("numVolumeRegions"), + "iSize": ISize.from_dict(obj.get("iSize")) if obj.get("iSize") is not None else None, + "sizeX": obj.get("sizeX"), + "sizeY": obj.get("sizeY"), + "sizeZ": obj.get("sizeZ"), + "membraneConnectivityOK": obj.get("membraneConnectivityOK"), + "outputFields": obj.get("outputFields"), + "chomboMesh": obj.get("chomboMesh") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/coordinate.py b/python-restclient/vcell_client/models/coordinate.py new file mode 100644 index 0000000000..d621ca545c --- /dev/null +++ b/python-restclient/vcell_client/models/coordinate.py @@ -0,0 +1,97 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class Coordinate(BaseModel): + """ + Coordinate + """ # noqa: E501 + x: Optional[Union[StrictFloat, StrictInt]] = None + y: Optional[Union[StrictFloat, StrictInt]] = None + z: Optional[Union[StrictFloat, StrictInt]] = None + __properties: ClassVar[List[str]] = ["x", "y", "z"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Coordinate from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of Coordinate from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in Coordinate) in the input: " + _key) + + _obj = cls.model_validate({ + "x": obj.get("x"), + "y": obj.get("y"), + "z": obj.get("z") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/extent.py b/python-restclient/vcell_client/models/extent.py new file mode 100644 index 0000000000..7a128c22a3 --- /dev/null +++ b/python-restclient/vcell_client/models/extent.py @@ -0,0 +1,97 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class Extent(BaseModel): + """ + Extent + """ # noqa: E501 + x: Optional[Union[StrictFloat, StrictInt]] = None + y: Optional[Union[StrictFloat, StrictInt]] = None + z: Optional[Union[StrictFloat, StrictInt]] = None + __properties: ClassVar[List[str]] = ["x", "y", "z"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Extent from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of Extent from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in Extent) in the input: " + _key) + + _obj = cls.model_validate({ + "x": obj.get("x"), + "y": obj.get("y"), + "z": obj.get("z") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/external_data_identifier.py b/python-restclient/vcell_client/models/external_data_identifier.py new file mode 100644 index 0000000000..37d4661c9b --- /dev/null +++ b/python-restclient/vcell_client/models/external_data_identifier.py @@ -0,0 +1,122 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictBool, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.key_value import KeyValue +from vcell_client.models.user import User +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class ExternalDataIdentifier(BaseModel): + """ + ExternalDataIdentifier + """ # noqa: E501 + key: Optional[KeyValue] = None + owner: Optional[User] = None + name: Optional[StrictStr] = None + i_d: Optional[StrictStr] = Field(default=None, alias="iD") + job_index: Optional[StrictInt] = Field(default=None, alias="jobIndex") + simulation_key: Optional[KeyValue] = Field(default=None, alias="simulationKey") + parameter_scan_type: Optional[StrictBool] = Field(default=None, alias="parameterScanType") + data_key: Optional[KeyValue] = Field(default=None, alias="dataKey") + __properties: ClassVar[List[str]] = ["key", "owner", "name", "iD", "jobIndex", "simulationKey", "parameterScanType", "dataKey"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of ExternalDataIdentifier from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of key + if self.key: + _dict['key'] = self.key.to_dict() + # override the default output from pydantic by calling `to_dict()` of owner + if self.owner: + _dict['owner'] = self.owner.to_dict() + # override the default output from pydantic by calling `to_dict()` of simulation_key + if self.simulation_key: + _dict['simulationKey'] = self.simulation_key.to_dict() + # override the default output from pydantic by calling `to_dict()` of data_key + if self.data_key: + _dict['dataKey'] = self.data_key.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of ExternalDataIdentifier from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in ExternalDataIdentifier) in the input: " + _key) + + _obj = cls.model_validate({ + "key": KeyValue.from_dict(obj.get("key")) if obj.get("key") is not None else None, + "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, + "name": obj.get("name"), + "iD": obj.get("iD"), + "jobIndex": obj.get("jobIndex"), + "simulationKey": KeyValue.from_dict(obj.get("simulationKey")) if obj.get("simulationKey") is not None else None, + "parameterScanType": obj.get("parameterScanType"), + "dataKey": KeyValue.from_dict(obj.get("dataKey")) if obj.get("dataKey") is not None else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_db_operation_spec.py b/python-restclient/vcell_client/models/field_data_db_operation_spec.py new file mode 100644 index 0000000000..28bd4e6a1a --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_db_operation_spec.py @@ -0,0 +1,120 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictBool, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.user import User +from vcell_client.models.versionable_type_version import VersionableTypeVersion +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataDBOperationSpec(BaseModel): + """ + FieldDataDBOperationSpec + """ # noqa: E501 + op_type: Optional[StrictInt] = Field(default=None, alias="opType") + spec_edi: Optional[ExternalDataIdentifier] = Field(default=None, alias="specEDI") + owner: Optional[User] = None + new_ext_data_id_name: Optional[StrictStr] = Field(default=None, alias="newExtDataIDName") + annotation: Optional[StrictStr] = None + source_names: Optional[List[StrictStr]] = Field(default=None, alias="sourceNames") + source_owner: Optional[VersionableTypeVersion] = Field(default=None, alias="sourceOwner") + b_include_sim_refs: Optional[StrictBool] = Field(default=None, alias="bIncludeSimRefs") + __properties: ClassVar[List[str]] = ["opType", "specEDI", "owner", "newExtDataIDName", "annotation", "sourceNames", "sourceOwner", "bIncludeSimRefs"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataDBOperationSpec from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of spec_edi + if self.spec_edi: + _dict['specEDI'] = self.spec_edi.to_dict() + # override the default output from pydantic by calling `to_dict()` of owner + if self.owner: + _dict['owner'] = self.owner.to_dict() + # override the default output from pydantic by calling `to_dict()` of source_owner + if self.source_owner: + _dict['sourceOwner'] = self.source_owner.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataDBOperationSpec from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataDBOperationSpec) in the input: " + _key) + + _obj = cls.model_validate({ + "opType": obj.get("opType"), + "specEDI": ExternalDataIdentifier.from_dict(obj.get("specEDI")) if obj.get("specEDI") is not None else None, + "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, + "newExtDataIDName": obj.get("newExtDataIDName"), + "annotation": obj.get("annotation"), + "sourceNames": obj.get("sourceNames"), + "sourceOwner": VersionableTypeVersion.from_dict(obj.get("sourceOwner")) if obj.get("sourceOwner") is not None else None, + "bIncludeSimRefs": obj.get("bIncludeSimRefs") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_external_data_ids.py b/python-restclient/vcell_client/models/field_data_external_data_ids.py new file mode 100644 index 0000000000..aca7a3df98 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_external_data_ids.py @@ -0,0 +1,123 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +from pydantic import Field +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.key_value import KeyValue +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataExternalDataIDs(BaseModel): + """ + FieldDataExternalDataIDs + """ # noqa: E501 + external_data_identifiers: Optional[List[ExternalDataIdentifier]] = Field(default=None, alias="externalDataIdentifiers") + external_data_annotations: Optional[List[StrictStr]] = Field(default=None, alias="externalDataAnnotations") + external_data_id_sim_refs: Optional[Dict[str, List[KeyValue]]] = Field(default=None, alias="externalDataIDSimRefs") + __properties: ClassVar[List[str]] = ["externalDataIdentifiers", "externalDataAnnotations", "externalDataIDSimRefs"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataExternalDataIDs from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in external_data_identifiers (list) + _items = [] + if self.external_data_identifiers: + for _item in self.external_data_identifiers: + if _item: + _items.append(_item.to_dict()) + _dict['externalDataIdentifiers'] = _items + # override the default output from pydantic by calling `to_dict()` of each value in external_data_id_sim_refs (dict of array) + _field_dict_of_array = {} + if self.external_data_id_sim_refs: + for _key in self.external_data_id_sim_refs: + if self.external_data_id_sim_refs[_key] is not None: + _field_dict_of_array[_key] = [ + _item.to_dict() for _item in self.external_data_id_sim_refs[_key] + ] + _dict['externalDataIDSimRefs'] = _field_dict_of_array + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataExternalDataIDs from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataExternalDataIDs) in the input: " + _key) + + _obj = cls.model_validate({ + "externalDataIdentifiers": [ExternalDataIdentifier.from_dict(_item) for _item in obj.get("externalDataIdentifiers")] if obj.get("externalDataIdentifiers") is not None else None, + "externalDataAnnotations": obj.get("externalDataAnnotations"), + "externalDataIDSimRefs": dict( + (_k, + [KeyValue.from_dict(_item) for _item in _v] + if _v is not None + else None + ) + for _k, _v in obj.get("externalDataIDSimRefs").items() + ) + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_file_operation_spec.py b/python-restclient/vcell_client/models/field_data_file_operation_spec.py new file mode 100644 index 0000000000..c9a1e8774b --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_file_operation_spec.py @@ -0,0 +1,165 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.cartesian_mesh import CartesianMesh +from vcell_client.models.extent import Extent +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.i_size import ISize +from vcell_client.models.key_value import KeyValue +from vcell_client.models.origin import Origin +from vcell_client.models.user import User +from vcell_client.models.variable_type import VariableType +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataFileOperationSpec(BaseModel): + """ + FieldDataFileOperationSpec + """ # noqa: E501 + op_type: Optional[StrictInt] = Field(default=None, alias="opType") + short_spec_data: Optional[List[List[List[StrictInt]]]] = Field(default=None, alias="shortSpecData") + double_spec_data: Optional[List[List[List[Union[StrictFloat, StrictInt]]]]] = Field(default=None, alias="doubleSpecData") + cartesian_mesh: Optional[CartesianMesh] = Field(default=None, alias="cartesianMesh") + spec_edi: Optional[ExternalDataIdentifier] = Field(default=None, alias="specEDI") + var_names: Optional[List[StrictStr]] = Field(default=None, alias="varNames") + variable_types: Optional[List[VariableType]] = Field(default=None, alias="variableTypes") + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + owner: Optional[User] = None + origin: Optional[Origin] = None + extent: Optional[Extent] = None + isize: Optional[ISize] = None + annotation: Optional[StrictStr] = None + source_sim_param_scan_job_index: Optional[StrictInt] = Field(default=None, alias="sourceSimParamScanJobIndex") + source_sim_data_key: Optional[KeyValue] = Field(default=None, alias="sourceSimDataKey") + source_owner: Optional[User] = Field(default=None, alias="sourceOwner") + field_data_name: Optional[StrictStr] = Field(default=None, alias="fieldDataName") + __properties: ClassVar[List[str]] = ["opType", "shortSpecData", "doubleSpecData", "cartesianMesh", "specEDI", "varNames", "variableTypes", "times", "owner", "origin", "extent", "isize", "annotation", "sourceSimParamScanJobIndex", "sourceSimDataKey", "sourceOwner", "fieldDataName"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataFileOperationSpec from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of cartesian_mesh + if self.cartesian_mesh: + _dict['cartesianMesh'] = self.cartesian_mesh.to_dict() + # override the default output from pydantic by calling `to_dict()` of spec_edi + if self.spec_edi: + _dict['specEDI'] = self.spec_edi.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in variable_types (list) + _items = [] + if self.variable_types: + for _item in self.variable_types: + if _item: + _items.append(_item.to_dict()) + _dict['variableTypes'] = _items + # override the default output from pydantic by calling `to_dict()` of owner + if self.owner: + _dict['owner'] = self.owner.to_dict() + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of isize + if self.isize: + _dict['isize'] = self.isize.to_dict() + # override the default output from pydantic by calling `to_dict()` of source_sim_data_key + if self.source_sim_data_key: + _dict['sourceSimDataKey'] = self.source_sim_data_key.to_dict() + # override the default output from pydantic by calling `to_dict()` of source_owner + if self.source_owner: + _dict['sourceOwner'] = self.source_owner.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataFileOperationSpec from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataFileOperationSpec) in the input: " + _key) + + _obj = cls.model_validate({ + "opType": obj.get("opType"), + "shortSpecData": obj.get("shortSpecData"), + "doubleSpecData": obj.get("doubleSpecData"), + "cartesianMesh": CartesianMesh.from_dict(obj.get("cartesianMesh")) if obj.get("cartesianMesh") is not None else None, + "specEDI": ExternalDataIdentifier.from_dict(obj.get("specEDI")) if obj.get("specEDI") is not None else None, + "varNames": obj.get("varNames"), + "variableTypes": [VariableType.from_dict(_item) for _item in obj.get("variableTypes")] if obj.get("variableTypes") is not None else None, + "times": obj.get("times"), + "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, + "annotation": obj.get("annotation"), + "sourceSimParamScanJobIndex": obj.get("sourceSimParamScanJobIndex"), + "sourceSimDataKey": KeyValue.from_dict(obj.get("sourceSimDataKey")) if obj.get("sourceSimDataKey") is not None else None, + "sourceOwner": User.from_dict(obj.get("sourceOwner")) if obj.get("sourceOwner") is not None else None, + "fieldDataName": obj.get("fieldDataName") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_no_copy_conflict.py b/python-restclient/vcell_client/models/field_data_no_copy_conflict.py new file mode 100644 index 0000000000..81ebb1283b --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_no_copy_conflict.py @@ -0,0 +1,122 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel +from pydantic import Field +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.key_value import KeyValue +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataNoCopyConflict(BaseModel): + """ + FieldDataNoCopyConflict + """ # noqa: E501 + old_name_new_id_hash: Optional[Dict[str, ExternalDataIdentifier]] = Field(default=None, alias="oldNameNewIDHash") + old_name_old_ext_data_id_key_hash: Optional[Dict[str, KeyValue]] = Field(default=None, alias="oldNameOldExtDataIDKeyHash") + __properties: ClassVar[List[str]] = ["oldNameNewIDHash", "oldNameOldExtDataIDKeyHash"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataNoCopyConflict from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each value in old_name_new_id_hash (dict) + _field_dict = {} + if self.old_name_new_id_hash: + for _key in self.old_name_new_id_hash: + if self.old_name_new_id_hash[_key]: + _field_dict[_key] = self.old_name_new_id_hash[_key].to_dict() + _dict['oldNameNewIDHash'] = _field_dict + # override the default output from pydantic by calling `to_dict()` of each value in old_name_old_ext_data_id_key_hash (dict) + _field_dict = {} + if self.old_name_old_ext_data_id_key_hash: + for _key in self.old_name_old_ext_data_id_key_hash: + if self.old_name_old_ext_data_id_key_hash[_key]: + _field_dict[_key] = self.old_name_old_ext_data_id_key_hash[_key].to_dict() + _dict['oldNameOldExtDataIDKeyHash'] = _field_dict + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataNoCopyConflict from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataNoCopyConflict) in the input: " + _key) + + _obj = cls.model_validate({ + "oldNameNewIDHash": dict( + (_k, ExternalDataIdentifier.from_dict(_v)) + for _k, _v in obj.get("oldNameNewIDHash").items() + ) + if obj.get("oldNameNewIDHash") is not None + else None, + "oldNameOldExtDataIDKeyHash": dict( + (_k, KeyValue.from_dict(_v)) + for _k, _v in obj.get("oldNameOldExtDataIDKeyHash").items() + ) + if obj.get("oldNameOldExtDataIDKeyHash") is not None + else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_save_results.py b/python-restclient/vcell_client/models/field_data_save_results.py new file mode 100644 index 0000000000..6c996dd60f --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_save_results.py @@ -0,0 +1,96 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +from pydantic import Field +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataSaveResults(BaseModel): + """ + FieldDataSaveResults + """ # noqa: E501 + field_data_name: Optional[StrictStr] = Field(default=None, alias="fieldDataName") + field_data_id: Optional[StrictStr] = Field(default=None, alias="fieldDataID") + __properties: ClassVar[List[str]] = ["fieldDataName", "fieldDataID"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataSaveResults from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataSaveResults from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataSaveResults) in the input: " + _key) + + _obj = cls.model_validate({ + "fieldDataName": obj.get("fieldDataName"), + "fieldDataID": obj.get("fieldDataID") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/group_access.py b/python-restclient/vcell_client/models/group_access.py new file mode 100644 index 0000000000..e57950d5de --- /dev/null +++ b/python-restclient/vcell_client/models/group_access.py @@ -0,0 +1,95 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class GroupAccess(BaseModel): + """ + GroupAccess + """ # noqa: E501 + groupid: Optional[Union[StrictFloat, StrictInt]] = None + description: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["groupid", "description"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of GroupAccess from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of GroupAccess from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in GroupAccess) in the input: " + _key) + + _obj = cls.model_validate({ + "groupid": obj.get("groupid"), + "description": obj.get("description") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/i_size.py b/python-restclient/vcell_client/models/i_size.py new file mode 100644 index 0000000000..284d188eee --- /dev/null +++ b/python-restclient/vcell_client/models/i_size.py @@ -0,0 +1,100 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictInt +from pydantic import Field +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class ISize(BaseModel): + """ + ISize + """ # noqa: E501 + x: Optional[StrictInt] = None + y: Optional[StrictInt] = None + z: Optional[StrictInt] = None + x_yz: Optional[StrictInt] = Field(default=None, alias="xYZ") + __properties: ClassVar[List[str]] = ["x", "y", "z", "xYZ"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of ISize from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of ISize from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in ISize) in the input: " + _key) + + _obj = cls.model_validate({ + "x": obj.get("x"), + "y": obj.get("y"), + "z": obj.get("z"), + "xYZ": obj.get("xYZ") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/origin.py b/python-restclient/vcell_client/models/origin.py new file mode 100644 index 0000000000..0a9d3661c8 --- /dev/null +++ b/python-restclient/vcell_client/models/origin.py @@ -0,0 +1,97 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class Origin(BaseModel): + """ + Origin + """ # noqa: E501 + x: Optional[Union[StrictFloat, StrictInt]] = None + y: Optional[Union[StrictFloat, StrictInt]] = None + z: Optional[Union[StrictFloat, StrictInt]] = None + __properties: ClassVar[List[str]] = ["x", "y", "z"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Origin from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of Origin from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in Origin) in the input: " + _key) + + _obj = cls.model_validate({ + "x": obj.get("x"), + "y": obj.get("y"), + "z": obj.get("z") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/ucd_info.py b/python-restclient/vcell_client/models/ucd_info.py new file mode 100644 index 0000000000..dfb72c3909 --- /dev/null +++ b/python-restclient/vcell_client/models/ucd_info.py @@ -0,0 +1,148 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictInt +from pydantic import Field +from vcell_client.models.coordinate import Coordinate +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class UCDInfo(BaseModel): + """ + UCDInfo + """ # noqa: E501 + ucd_grid_nodes: Optional[List[List[List[Coordinate]]]] = Field(default=None, alias="ucdGridNodes") + ucd_membrane_quads: Optional[List[List[StrictInt]]] = Field(default=None, alias="ucdMembraneQuads") + reduced_ucd_grid_nodes_v: Optional[List[Coordinate]] = Field(default=None, alias="reducedUCDGridNodesV") + u_cd_grid_nodes: Optional[List[List[List[Coordinate]]]] = Field(default=None, alias="uCDGridNodes") + u_cd_membrane_quads: Optional[List[List[StrictInt]]] = Field(default=None, alias="uCDMembraneQuads") + num_volume_nodes_x: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesX") + num_volume_nodes_y: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesY") + num_volume_nodes_z: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesZ") + num_points_xyz: Optional[StrictInt] = Field(default=None, alias="numPointsXYZ") + num_volume_nodes_xy: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesXY") + num_volume_cells: Optional[StrictInt] = Field(default=None, alias="numVolumeCells") + num_membrane_cells: Optional[StrictInt] = Field(default=None, alias="numMembraneCells") + __properties: ClassVar[List[str]] = ["ucdGridNodes", "ucdMembraneQuads", "reducedUCDGridNodesV", "uCDGridNodes", "uCDMembraneQuads", "numVolumeNodesX", "numVolumeNodesY", "numVolumeNodesZ", "numPointsXYZ", "numVolumeNodesXY", "numVolumeCells", "numMembraneCells"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of UCDInfo from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in ucd_grid_nodes (list of list) + _items = [] + if self.ucd_grid_nodes: + for _item in self.ucd_grid_nodes: + if _item: + _items.append( + [_inner_item.to_dict() for _inner_item in _item if _inner_item is not None] + ) + _dict['ucdGridNodes'] = _items + # override the default output from pydantic by calling `to_dict()` of each item in reduced_ucd_grid_nodes_v (list) + _items = [] + if self.reduced_ucd_grid_nodes_v: + for _item in self.reduced_ucd_grid_nodes_v: + if _item: + _items.append(_item.to_dict()) + _dict['reducedUCDGridNodesV'] = _items + # override the default output from pydantic by calling `to_dict()` of each item in u_cd_grid_nodes (list of list) + _items = [] + if self.u_cd_grid_nodes: + for _item in self.u_cd_grid_nodes: + if _item: + _items.append( + [_inner_item.to_dict() for _inner_item in _item if _inner_item is not None] + ) + _dict['uCDGridNodes'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of UCDInfo from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in UCDInfo) in the input: " + _key) + + _obj = cls.model_validate({ + "ucdGridNodes": [ + [List[Coordinate].from_dict(_inner_item) for _inner_item in _item] + for _item in obj.get("ucdGridNodes") + ] if obj.get("ucdGridNodes") is not None else None, + "ucdMembraneQuads": obj.get("ucdMembraneQuads"), + "reducedUCDGridNodesV": [Coordinate.from_dict(_item) for _item in obj.get("reducedUCDGridNodesV")] if obj.get("reducedUCDGridNodesV") is not None else None, + "uCDGridNodes": [ + [List[Coordinate].from_dict(_inner_item) for _inner_item in _item] + for _item in obj.get("uCDGridNodes") + ] if obj.get("uCDGridNodes") is not None else None, + "uCDMembraneQuads": obj.get("uCDMembraneQuads"), + "numVolumeNodesX": obj.get("numVolumeNodesX"), + "numVolumeNodesY": obj.get("numVolumeNodesY"), + "numVolumeNodesZ": obj.get("numVolumeNodesZ"), + "numPointsXYZ": obj.get("numPointsXYZ"), + "numVolumeNodesXY": obj.get("numVolumeNodesXY"), + "numVolumeCells": obj.get("numVolumeCells"), + "numMembraneCells": obj.get("numMembraneCells") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/variable_domain.py b/python-restclient/vcell_client/models/variable_domain.py new file mode 100644 index 0000000000..6df11499a4 --- /dev/null +++ b/python-restclient/vcell_client/models/variable_domain.py @@ -0,0 +1,51 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +import pprint +import re # noqa: F401 +from enum import Enum + + + +try: + from typing import Self +except ImportError: + from typing_extensions import Self + + +class VariableDomain(str, Enum): + """ + VariableDomain + """ + + """ + allowed enum values + """ + VARIABLEDOMAIN_POSTPROCESSING = 'VARIABLEDOMAIN_POSTPROCESSING' + VARIABLEDOMAIN_UNKNOWN = 'VARIABLEDOMAIN_UNKNOWN' + VARIABLEDOMAIN_VOLUME = 'VARIABLEDOMAIN_VOLUME' + VARIABLEDOMAIN_MEMBRANE = 'VARIABLEDOMAIN_MEMBRANE' + VARIABLEDOMAIN_CONTOUR = 'VARIABLEDOMAIN_CONTOUR' + VARIABLEDOMAIN_NONSPATIAL = 'VARIABLEDOMAIN_NONSPATIAL' + VARIABLEDOMAIN_POINT = 'VARIABLEDOMAIN_POINT' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of VariableDomain from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/python-restclient/vcell_client/models/variable_type.py b/python-restclient/vcell_client/models/variable_type.py new file mode 100644 index 0000000000..c8e8d1e0f8 --- /dev/null +++ b/python-restclient/vcell_client/models/variable_type.py @@ -0,0 +1,111 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictBool, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.variable_domain import VariableDomain +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class VariableType(BaseModel): + """ + VariableType + """ # noqa: E501 + type: Optional[StrictInt] = None + variable_domain: Optional[VariableDomain] = Field(default=None, alias="variableDomain") + name: Optional[StrictStr] = None + units: Optional[StrictStr] = None + label: Optional[StrictStr] = None + legacy_warn: Optional[StrictBool] = Field(default=None, alias="legacyWarn") + default_label: Optional[StrictStr] = Field(default=None, alias="defaultLabel") + default_units: Optional[StrictStr] = Field(default=None, alias="defaultUnits") + type_name: Optional[StrictStr] = Field(default=None, alias="typeName") + __properties: ClassVar[List[str]] = ["type", "variableDomain", "name", "units", "label", "legacyWarn", "defaultLabel", "defaultUnits", "typeName"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of VariableType from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of VariableType from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in VariableType) in the input: " + _key) + + _obj = cls.model_validate({ + "type": obj.get("type"), + "variableDomain": obj.get("variableDomain"), + "name": obj.get("name"), + "units": obj.get("units"), + "label": obj.get("label"), + "legacyWarn": obj.get("legacyWarn"), + "defaultLabel": obj.get("defaultLabel"), + "defaultUnits": obj.get("defaultUnits"), + "typeName": obj.get("typeName") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/version.py b/python-restclient/vcell_client/models/version.py new file mode 100644 index 0000000000..9407f894eb --- /dev/null +++ b/python-restclient/vcell_client/models/version.py @@ -0,0 +1,157 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from datetime import date +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.group_access import GroupAccess +from vcell_client.models.key_value import KeyValue +from vcell_client.models.user import User +from vcell_client.models.version_flag import VersionFlag +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class Version(BaseModel): + """ + Version + """ # noqa: E501 + version_key: Optional[KeyValue] = Field(default=None, alias="versionKey") + version_name: Optional[StrictStr] = Field(default=None, alias="versionName") + version_owner: Optional[User] = Field(default=None, alias="versionOwner") + version_group_access: Optional[GroupAccess] = Field(default=None, alias="versionGroupAccess") + version_branch_point_ref: Optional[KeyValue] = Field(default=None, alias="versionBranchPointRef") + version_branch_id: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="versionBranchID") + version_date: Optional[date] = Field(default=None, alias="versionDate") + version_flag: Optional[VersionFlag] = Field(default=None, alias="versionFlag") + version_annot: Optional[StrictStr] = Field(default=None, alias="versionAnnot") + annot: Optional[StrictStr] = None + branch_id: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="branchID") + branch_point_ref_key: Optional[KeyValue] = Field(default=None, alias="branchPointRefKey") + var_date: Optional[date] = Field(default=None, alias="date") + flag: Optional[VersionFlag] = None + group_access: Optional[GroupAccess] = Field(default=None, alias="groupAccess") + name: Optional[StrictStr] = None + owner: Optional[User] = None + __properties: ClassVar[List[str]] = ["versionKey", "versionName", "versionOwner", "versionGroupAccess", "versionBranchPointRef", "versionBranchID", "versionDate", "versionFlag", "versionAnnot", "annot", "branchID", "branchPointRefKey", "date", "flag", "groupAccess", "name", "owner"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Version from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of version_key + if self.version_key: + _dict['versionKey'] = self.version_key.to_dict() + # override the default output from pydantic by calling `to_dict()` of version_owner + if self.version_owner: + _dict['versionOwner'] = self.version_owner.to_dict() + # override the default output from pydantic by calling `to_dict()` of version_group_access + if self.version_group_access: + _dict['versionGroupAccess'] = self.version_group_access.to_dict() + # override the default output from pydantic by calling `to_dict()` of version_branch_point_ref + if self.version_branch_point_ref: + _dict['versionBranchPointRef'] = self.version_branch_point_ref.to_dict() + # override the default output from pydantic by calling `to_dict()` of version_flag + if self.version_flag: + _dict['versionFlag'] = self.version_flag.to_dict() + # override the default output from pydantic by calling `to_dict()` of branch_point_ref_key + if self.branch_point_ref_key: + _dict['branchPointRefKey'] = self.branch_point_ref_key.to_dict() + # override the default output from pydantic by calling `to_dict()` of flag + if self.flag: + _dict['flag'] = self.flag.to_dict() + # override the default output from pydantic by calling `to_dict()` of group_access + if self.group_access: + _dict['groupAccess'] = self.group_access.to_dict() + # override the default output from pydantic by calling `to_dict()` of owner + if self.owner: + _dict['owner'] = self.owner.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of Version from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in Version) in the input: " + _key) + + _obj = cls.model_validate({ + "versionKey": KeyValue.from_dict(obj.get("versionKey")) if obj.get("versionKey") is not None else None, + "versionName": obj.get("versionName"), + "versionOwner": User.from_dict(obj.get("versionOwner")) if obj.get("versionOwner") is not None else None, + "versionGroupAccess": GroupAccess.from_dict(obj.get("versionGroupAccess")) if obj.get("versionGroupAccess") is not None else None, + "versionBranchPointRef": KeyValue.from_dict(obj.get("versionBranchPointRef")) if obj.get("versionBranchPointRef") is not None else None, + "versionBranchID": obj.get("versionBranchID"), + "versionDate": obj.get("versionDate"), + "versionFlag": VersionFlag.from_dict(obj.get("versionFlag")) if obj.get("versionFlag") is not None else None, + "versionAnnot": obj.get("versionAnnot"), + "annot": obj.get("annot"), + "branchID": obj.get("branchID"), + "branchPointRefKey": KeyValue.from_dict(obj.get("branchPointRefKey")) if obj.get("branchPointRefKey") is not None else None, + "date": obj.get("date"), + "flag": VersionFlag.from_dict(obj.get("flag")) if obj.get("flag") is not None else None, + "groupAccess": GroupAccess.from_dict(obj.get("groupAccess")) if obj.get("groupAccess") is not None else None, + "name": obj.get("name"), + "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/version_flag.py b/python-restclient/vcell_client/models/version_flag.py new file mode 100644 index 0000000000..312b972ebf --- /dev/null +++ b/python-restclient/vcell_client/models/version_flag.py @@ -0,0 +1,102 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictBool, StrictInt +from pydantic import Field +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class VersionFlag(BaseModel): + """ + VersionFlag + """ # noqa: E501 + version_flag: Optional[StrictInt] = Field(default=None, alias="versionFlag") + int_value: Optional[StrictInt] = Field(default=None, alias="intValue") + archived: Optional[StrictBool] = None + current: Optional[StrictBool] = None + published: Optional[StrictBool] = None + __properties: ClassVar[List[str]] = ["versionFlag", "intValue", "archived", "current", "published"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of VersionFlag from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of VersionFlag from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in VersionFlag) in the input: " + _key) + + _obj = cls.model_validate({ + "versionFlag": obj.get("versionFlag"), + "intValue": obj.get("intValue"), + "archived": obj.get("archived"), + "current": obj.get("current"), + "published": obj.get("published") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/versionable_type.py b/python-restclient/vcell_client/models/versionable_type.py new file mode 100644 index 0000000000..a349201ebc --- /dev/null +++ b/python-restclient/vcell_client/models/versionable_type.py @@ -0,0 +1,108 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictBool, StrictInt, StrictStr +from pydantic import Field +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class VersionableType(BaseModel): + """ + VersionableType + """ # noqa: E501 + v_type: Optional[StrictInt] = Field(default=None, alias="vType") + name: Optional[StrictStr] = None + v_class: Optional[Union[str, Any]] = Field(default=None, alias="vClass") + b_top_level: Optional[StrictBool] = Field(default=None, alias="bTopLevel") + code: Optional[StrictInt] = None + is_top_level: Optional[StrictBool] = Field(default=None, alias="isTopLevel") + type_name: Optional[StrictStr] = Field(default=None, alias="typeName") + version_class: Optional[Union[str, Any]] = Field(default=None, alias="versionClass") + __properties: ClassVar[List[str]] = ["vType", "name", "vClass", "bTopLevel", "code", "isTopLevel", "typeName", "versionClass"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of VersionableType from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of VersionableType from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in VersionableType) in the input: " + _key) + + _obj = cls.model_validate({ + "vType": obj.get("vType"), + "name": obj.get("name"), + "vClass": obj.get("vClass"), + "bTopLevel": obj.get("bTopLevel"), + "code": obj.get("code"), + "isTopLevel": obj.get("isTopLevel"), + "typeName": obj.get("typeName"), + "versionClass": obj.get("versionClass") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/versionable_type_version.py b/python-restclient/vcell_client/models/versionable_type_version.py new file mode 100644 index 0000000000..8c77d0d488 --- /dev/null +++ b/python-restclient/vcell_client/models/versionable_type_version.py @@ -0,0 +1,104 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel +from pydantic import Field +from vcell_client.models.version import Version +from vcell_client.models.versionable_type import VersionableType +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class VersionableTypeVersion(BaseModel): + """ + VersionableTypeVersion + """ # noqa: E501 + v_type: Optional[VersionableType] = Field(default=None, alias="vType") + version: Optional[Version] = None + __properties: ClassVar[List[str]] = ["vType", "version"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of VersionableTypeVersion from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of v_type + if self.v_type: + _dict['vType'] = self.v_type.to_dict() + # override the default output from pydantic by calling `to_dict()` of version + if self.version: + _dict['version'] = self.version.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of VersionableTypeVersion from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in VersionableTypeVersion) in the input: " + _key) + + _obj = cls.model_validate({ + "vType": VersionableType.from_dict(obj.get("vType")) if obj.get("vType") is not None else None, + "version": Version.from_dict(obj.get("version")) if obj.get("version") is not None else None + }) + return _obj + + diff --git a/tools/openapi.yaml b/tools/openapi.yaml index 90575a6396..b75e9577a1 100644 --- a/tools/openapi.yaml +++ b/tools/openapi.yaml @@ -158,11 +158,13 @@ paths: type: string responses: "200": - description: OK + description: return BioModel information in JSON format content: application/json: schema: $ref: '#/components/schemas/BioModel' + "404": + description: BioModel not found delete: tags: - Bio Model Resource @@ -177,6 +179,107 @@ paths: responses: "204": description: No Content + /api/v1/fieldData: + get: + tags: + - Field Data Resource + summary: Get all of the field data for that user. + operationId: getAllFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataExternalDataIDs' + delete: + tags: + - Field Data Resource + summary: Delete the selected field data. + operationId: deleteFieldData + requestBody: + content: + text/plain: + schema: + type: string + responses: + "204": + description: No Content + /api/v1/fieldData/copy: + post: + tags: + - Field Data Resource + summary: Copy an existing field data entry. + operationId: copyFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataNoCopyConflict' + /api/v1/fieldData/createFieldDataFromFile: + post: + tags: + - Field Data Resource + operationId: generateFieldDataEstimate + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/FieldDataFile' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataFileOperationSpec' + /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: + post: + tags: + - Field Data Resource + operationId: createNewFieldDataFromFileAlreadyAnalyzed + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataSaveResults' + /api/v1/fieldData/createFieldDataFromSimulation: + post: + tags: + - Field Data Resource + summary: Create new field data from a simulation. + operationId: createNewFieldDataFromSimulation + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalDataIdentifier' /api/v1/helloworld: get: tags: @@ -449,10 +552,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -499,6 +602,36 @@ components: type: string userKey: type: string + AnalyzedResultsFromFieldData: + type: object + properties: + shortSpecData: + type: array + items: + type: array + items: + type: array + items: + type: integer + varNames: + type: array + items: + type: string + times: + type: array + items: + format: double + type: number + origin: + $ref: '#/components/schemas/Origin' + extent: + $ref: '#/components/schemas/Extent' + isize: + $ref: '#/components/schemas/ISize' + annotation: + type: string + name: + type: string Application: type: object BatchSystemType: @@ -558,6 +691,67 @@ components: versionFlag: format: int32 type: integer + CartesianMesh: + type: object + properties: + compressedBytes: + format: binary + type: string + uCDInfo: + $ref: '#/components/schemas/UCDInfo' + geometryDimension: + format: int32 + type: integer + volumeRegionMapSubvolume: + type: object + additionalProperties: + format: int32 + type: integer + membraneRegionMapSubvolumesInOut: + type: object + additionalProperties: {} + numMembraneElements: + format: int32 + type: integer + numMembraneRegions: + format: int32 + type: integer + numVolumeElements: + format: int32 + type: integer + numVolumeRegions: + format: int32 + type: integer + iSize: + $ref: '#/components/schemas/ISize' + sizeX: + format: int32 + type: integer + sizeY: + format: int32 + type: integer + sizeZ: + format: int32 + type: integer + membraneConnectivityOK: + type: boolean + outputFields: + type: array + items: {} + chomboMesh: + type: boolean + Coordinate: + type: object + properties: + x: + format: double + type: number + "y": + format: double + type: number + z: + format: double + type: number Date: format: date type: string @@ -615,6 +809,175 @@ components: - WORKEREVENT_FAILURE - JOB_FAILED type: string + Extent: + type: object + properties: + x: + format: double + type: number + xml: + attribute: true + "y": + format: double + type: number + xml: + attribute: true + z: + format: double + type: number + xml: + attribute: true + ExternalDataIdentifier: + type: object + properties: + key: + $ref: '#/components/schemas/KeyValue' + owner: + $ref: '#/components/schemas/User' + name: + type: string + iD: + type: string + jobIndex: + format: int32 + type: integer + simulationKey: + $ref: '#/components/schemas/KeyValue' + parameterScanType: + type: boolean + dataKey: + $ref: '#/components/schemas/KeyValue' + FieldDataDBOperationSpec: + type: object + properties: + opType: + format: int32 + type: integer + specEDI: + $ref: '#/components/schemas/ExternalDataIdentifier' + owner: + $ref: '#/components/schemas/User' + newExtDataIDName: + type: string + annotation: + type: string + sourceNames: + type: array + items: + type: string + sourceOwner: + $ref: '#/components/schemas/VersionableTypeVersion' + bIncludeSimRefs: + type: boolean + FieldDataExternalDataIDs: + type: object + properties: + externalDataIdentifiers: + type: array + items: + $ref: '#/components/schemas/ExternalDataIdentifier' + externalDataAnnotations: + type: array + items: + type: string + externalDataIDSimRefs: + type: object + additionalProperties: + type: array + items: + $ref: '#/components/schemas/KeyValue' + FieldDataFile: + type: object + properties: + file: + format: binary + type: string + fileName: + type: string + FieldDataFileOperationSpec: + type: object + properties: + opType: + format: int32 + type: integer + shortSpecData: + type: array + items: + type: array + items: + type: array + items: + type: integer + doubleSpecData: + type: array + items: + type: array + items: + type: array + items: + format: double + type: number + cartesianMesh: + $ref: '#/components/schemas/CartesianMesh' + specEDI: + $ref: '#/components/schemas/ExternalDataIdentifier' + varNames: + type: array + items: + type: string + variableTypes: + type: array + items: + $ref: '#/components/schemas/VariableType' + times: + type: array + items: + format: double + type: number + owner: + $ref: '#/components/schemas/User' + origin: + $ref: '#/components/schemas/Origin' + extent: + $ref: '#/components/schemas/Extent' + isize: + $ref: '#/components/schemas/ISize' + annotation: + type: string + sourceSimParamScanJobIndex: + format: int32 + type: integer + sourceSimDataKey: + $ref: '#/components/schemas/KeyValue' + sourceOwner: + $ref: '#/components/schemas/User' + fieldDataName: + type: string + FieldDataNoCopyConflict: + type: object + properties: + oldNameNewIDHash: + type: object + additionalProperties: + $ref: '#/components/schemas/ExternalDataIdentifier' + oldNameOldExtDataIDKeyHash: + type: object + additionalProperties: + $ref: '#/components/schemas/KeyValue' + FieldDataSaveResults: + type: object + properties: + fieldDataName: + type: string + fieldDataID: + type: string + GroupAccess: + type: object + properties: + groupid: + type: number + description: + type: string HelloWorldMessage: type: object properties: @@ -630,6 +993,21 @@ components: type: string batchSystemType: $ref: '#/components/schemas/BatchSystemType' + ISize: + type: object + properties: + x: + format: int32 + type: integer + "y": + format: int32 + type: integer + z: + format: int32 + type: integer + xYZ: + format: int32 + type: integer Identity: type: object properties: @@ -672,6 +1050,24 @@ components: versionFlag: format: int32 type: integer + Origin: + type: object + properties: + x: + format: double + type: number + xml: + attribute: true + "y": + format: double + type: number + xml: + attribute: true + z: + format: double + type: number + xml: + attribute: true Publication: type: object properties: @@ -825,6 +1221,64 @@ components: timepoint: format: double type: number + UCDInfo: + type: object + properties: + ucdGridNodes: + type: array + items: + type: array + items: + type: array + items: + $ref: '#/components/schemas/Coordinate' + ucdMembraneQuads: + type: array + items: + type: array + items: + format: int32 + type: integer + reducedUCDGridNodesV: + type: array + items: + $ref: '#/components/schemas/Coordinate' + uCDGridNodes: + type: array + items: + type: array + items: + type: array + items: + $ref: '#/components/schemas/Coordinate' + uCDMembraneQuads: + type: array + items: + type: array + items: + format: int32 + type: integer + numVolumeNodesX: + format: int32 + type: integer + numVolumeNodesY: + format: int32 + type: integer + numVolumeNodesZ: + format: int32 + type: integer + numPointsXYZ: + format: int32 + type: integer + numVolumeNodesXY: + format: int32 + type: integer + numVolumeCells: + format: int32 + type: integer + numMembraneCells: + format: int32 + type: integer User: type: object properties: @@ -880,6 +1334,118 @@ components: $ref: '#/components/schemas/User' iD: type: string + VariableDomain: + enum: + - VARIABLEDOMAIN_POSTPROCESSING + - VARIABLEDOMAIN_UNKNOWN + - VARIABLEDOMAIN_VOLUME + - VARIABLEDOMAIN_MEMBRANE + - VARIABLEDOMAIN_CONTOUR + - VARIABLEDOMAIN_NONSPATIAL + - VARIABLEDOMAIN_POINT + type: string + VariableType: + type: object + properties: + type: + format: int32 + type: integer + variableDomain: + $ref: '#/components/schemas/VariableDomain' + name: + type: string + units: + type: string + label: + type: string + legacyWarn: + type: boolean + defaultLabel: + type: string + defaultUnits: + type: string + typeName: + type: string + Version: + type: object + properties: + versionKey: + $ref: '#/components/schemas/KeyValue' + versionName: + type: string + versionOwner: + $ref: '#/components/schemas/User' + versionGroupAccess: + $ref: '#/components/schemas/GroupAccess' + versionBranchPointRef: + $ref: '#/components/schemas/KeyValue' + versionBranchID: + type: number + versionDate: + $ref: '#/components/schemas/Date' + versionFlag: + $ref: '#/components/schemas/VersionFlag' + versionAnnot: + type: string + annot: + type: string + branchID: + type: number + branchPointRefKey: + $ref: '#/components/schemas/KeyValue' + date: + $ref: '#/components/schemas/Date' + flag: + $ref: '#/components/schemas/VersionFlag' + groupAccess: + $ref: '#/components/schemas/GroupAccess' + name: + type: string + owner: + $ref: '#/components/schemas/User' + VersionFlag: + type: object + properties: + versionFlag: + format: int32 + type: integer + intValue: + format: int32 + type: integer + archived: + type: boolean + current: + type: boolean + published: + type: boolean + VersionableType: + type: object + properties: + vType: + format: int32 + type: integer + name: + type: string + vClass: + type: object + bTopLevel: + type: boolean + code: + format: int32 + type: integer + isTopLevel: + type: boolean + typeName: + type: string + versionClass: + type: object + VersionableTypeVersion: + type: object + properties: + vType: + $ref: '#/components/schemas/VersionableType' + version: + $ref: '#/components/schemas/Version' securitySchemes: openId: type: openIdConnect diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 0105336499..8704a537a4 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -3,17 +3,31 @@ README.md api/openapi.yaml docs/AccesTokenRepresentationRecord.md docs/AdminResourceApi.md +docs/AnalyzedResultsFromFieldData.md docs/BatchSystemType.md docs/BioModel.md docs/BioModelResourceApi.md docs/BiomodelRef.md +docs/CartesianMesh.md +docs/Coordinate.md docs/DetailedState.md +docs/Extent.md +docs/ExternalDataIdentifier.md +docs/FieldDataDBOperationSpec.md +docs/FieldDataExternalDataIDs.md +docs/FieldDataFileOperationSpec.md +docs/FieldDataNoCopyConflict.md +docs/FieldDataResourceApi.md +docs/FieldDataSaveResults.md +docs/GroupAccess.md docs/HelloWorldApi.md docs/HelloWorldMessage.md docs/HtcJobID.md +docs/ISize.md docs/Identity.md docs/KeyValue.md docs/MathmodelRef.md +docs/Origin.md docs/Publication.md docs/PublicationResourceApi.md docs/SchedulerStatus.md @@ -26,12 +40,19 @@ docs/SimulationResourceApi.md docs/SimulationStatusPersistentRecord.md docs/Status.md docs/StatusMessage.md +docs/UCDInfo.md docs/User.md docs/UserIdentityJSONSafe.md docs/UserLoginInfoForMapping.md docs/UserRegistrationInfo.md docs/UsersResourceApi.md docs/VCSimulationIdentifier.md +docs/VariableDomain.md +docs/VariableType.md +docs/Version.md +docs/VersionFlag.md +docs/VersionableType.md +docs/VersionableTypeVersion.md src/main/AndroidManifest.xml src/main/java/org/vcell/restclient/ApiClient.java src/main/java/org/vcell/restclient/ApiException.java @@ -44,21 +65,35 @@ src/main/java/org/vcell/restclient/ServerConfiguration.java src/main/java/org/vcell/restclient/ServerVariable.java src/main/java/org/vcell/restclient/api/AdminResourceApi.java src/main/java/org/vcell/restclient/api/BioModelResourceApi.java +src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java src/main/java/org/vcell/restclient/api/HelloWorldApi.java src/main/java/org/vcell/restclient/api/PublicationResourceApi.java src/main/java/org/vcell/restclient/api/SimulationResourceApi.java src/main/java/org/vcell/restclient/api/UsersResourceApi.java src/main/java/org/vcell/restclient/model/AbstractOpenApiSchema.java src/main/java/org/vcell/restclient/model/AccesTokenRepresentationRecord.java +src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java src/main/java/org/vcell/restclient/model/BatchSystemType.java src/main/java/org/vcell/restclient/model/BioModel.java src/main/java/org/vcell/restclient/model/BiomodelRef.java +src/main/java/org/vcell/restclient/model/CartesianMesh.java +src/main/java/org/vcell/restclient/model/Coordinate.java src/main/java/org/vcell/restclient/model/DetailedState.java +src/main/java/org/vcell/restclient/model/Extent.java +src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java +src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java +src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java +src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java +src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java +src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java +src/main/java/org/vcell/restclient/model/GroupAccess.java src/main/java/org/vcell/restclient/model/HelloWorldMessage.java src/main/java/org/vcell/restclient/model/HtcJobID.java +src/main/java/org/vcell/restclient/model/ISize.java src/main/java/org/vcell/restclient/model/Identity.java src/main/java/org/vcell/restclient/model/KeyValue.java src/main/java/org/vcell/restclient/model/MathmodelRef.java +src/main/java/org/vcell/restclient/model/Origin.java src/main/java/org/vcell/restclient/model/Publication.java src/main/java/org/vcell/restclient/model/SchedulerStatus.java src/main/java/org/vcell/restclient/model/SimulationExecutionStatusRecord.java @@ -69,8 +104,36 @@ src/main/java/org/vcell/restclient/model/SimulationQueueID.java src/main/java/org/vcell/restclient/model/SimulationStatusPersistentRecord.java src/main/java/org/vcell/restclient/model/Status.java src/main/java/org/vcell/restclient/model/StatusMessage.java +src/main/java/org/vcell/restclient/model/UCDInfo.java src/main/java/org/vcell/restclient/model/User.java src/main/java/org/vcell/restclient/model/UserIdentityJSONSafe.java src/main/java/org/vcell/restclient/model/UserLoginInfoForMapping.java src/main/java/org/vcell/restclient/model/UserRegistrationInfo.java src/main/java/org/vcell/restclient/model/VCSimulationIdentifier.java +src/main/java/org/vcell/restclient/model/VariableDomain.java +src/main/java/org/vcell/restclient/model/VariableType.java +src/main/java/org/vcell/restclient/model/Version.java +src/main/java/org/vcell/restclient/model/VersionFlag.java +src/main/java/org/vcell/restclient/model/VersionableType.java +src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java +src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java +src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java +src/test/java/org/vcell/restclient/model/CartesianMeshTest.java +src/test/java/org/vcell/restclient/model/CoordinateTest.java +src/test/java/org/vcell/restclient/model/ExtentTest.java +src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java +src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java +src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java +src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java +src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java +src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java +src/test/java/org/vcell/restclient/model/GroupAccessTest.java +src/test/java/org/vcell/restclient/model/ISizeTest.java +src/test/java/org/vcell/restclient/model/OriginTest.java +src/test/java/org/vcell/restclient/model/UCDInfoTest.java +src/test/java/org/vcell/restclient/model/VariableDomainTest.java +src/test/java/org/vcell/restclient/model/VariableTypeTest.java +src/test/java/org/vcell/restclient/model/VersionFlagTest.java +src/test/java/org/vcell/restclient/model/VersionTest.java +src/test/java/org/vcell/restclient/model/VersionableTypeTest.java +src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java diff --git a/vcell-restclient/README.md b/vcell-restclient/README.md index da0fbcc9a4..0dad233058 100644 --- a/vcell-restclient/README.md +++ b/vcell-restclient/README.md @@ -113,6 +113,18 @@ Class | Method | HTTP request | Description *BioModelResourceApi* | [**getBiomodelByIdWithHttpInfo**](docs/BioModelResourceApi.md#getBiomodelByIdWithHttpInfo) | **GET** /api/v1/bioModel/{bioModelID} | Get BioModel information in JSON format by ID. *BioModelResourceApi* | [**uploadBioModel**](docs/BioModelResourceApi.md#uploadBioModel) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. *BioModelResourceApi* | [**uploadBioModelWithHttpInfo**](docs/BioModelResourceApi.md#uploadBioModelWithHttpInfo) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. +*FieldDataResourceApi* | [**copyFieldData**](docs/FieldDataResourceApi.md#copyFieldData) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. +*FieldDataResourceApi* | [**copyFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#copyFieldDataWithHttpInfo) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. +*FieldDataResourceApi* | [**createNewFieldDataFromFileAlreadyAnalyzed**](docs/FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | +*FieldDataResourceApi* | [**createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo**](docs/FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | +*FieldDataResourceApi* | [**createNewFieldDataFromSimulation**](docs/FieldDataResourceApi.md#createNewFieldDataFromSimulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. +*FieldDataResourceApi* | [**createNewFieldDataFromSimulationWithHttpInfo**](docs/FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. +*FieldDataResourceApi* | [**deleteFieldData**](docs/FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. +*FieldDataResourceApi* | [**deleteFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. +*FieldDataResourceApi* | [**generateFieldDataEstimate**](docs/FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | +*FieldDataResourceApi* | [**generateFieldDataEstimateWithHttpInfo**](docs/FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFile | +*FieldDataResourceApi* | [**getAllFieldData**](docs/FieldDataResourceApi.md#getAllFieldData) | **GET** /api/v1/fieldData | Get all of the field data for that user. +*FieldDataResourceApi* | [**getAllFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#getAllFieldDataWithHttpInfo) | **GET** /api/v1/fieldData | Get all of the field data for that user. *HelloWorldApi* | [**getHelloWorld**](docs/HelloWorldApi.md#getHelloWorld) | **GET** /api/v1/helloworld | Get hello world message. *HelloWorldApi* | [**getHelloWorldWithHttpInfo**](docs/HelloWorldApi.md#getHelloWorldWithHttpInfo) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**createPublication**](docs/PublicationResourceApi.md#createPublication) | **POST** /api/v1/publications | Create publication @@ -156,15 +168,28 @@ Class | Method | HTTP request | Description ## Documentation for Models - [AccesTokenRepresentationRecord](docs/AccesTokenRepresentationRecord.md) + - [AnalyzedResultsFromFieldData](docs/AnalyzedResultsFromFieldData.md) - [BatchSystemType](docs/BatchSystemType.md) - [BioModel](docs/BioModel.md) - [BiomodelRef](docs/BiomodelRef.md) + - [CartesianMesh](docs/CartesianMesh.md) + - [Coordinate](docs/Coordinate.md) - [DetailedState](docs/DetailedState.md) + - [Extent](docs/Extent.md) + - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) + - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) + - [FieldDataExternalDataIDs](docs/FieldDataExternalDataIDs.md) + - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) + - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) + - [FieldDataSaveResults](docs/FieldDataSaveResults.md) + - [GroupAccess](docs/GroupAccess.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) - [HtcJobID](docs/HtcJobID.md) + - [ISize](docs/ISize.md) - [Identity](docs/Identity.md) - [KeyValue](docs/KeyValue.md) - [MathmodelRef](docs/MathmodelRef.md) + - [Origin](docs/Origin.md) - [Publication](docs/Publication.md) - [SchedulerStatus](docs/SchedulerStatus.md) - [SimulationExecutionStatusRecord](docs/SimulationExecutionStatusRecord.md) @@ -175,11 +200,18 @@ Class | Method | HTTP request | Description - [SimulationStatusPersistentRecord](docs/SimulationStatusPersistentRecord.md) - [Status](docs/Status.md) - [StatusMessage](docs/StatusMessage.md) + - [UCDInfo](docs/UCDInfo.md) - [User](docs/User.md) - [UserIdentityJSONSafe](docs/UserIdentityJSONSafe.md) - [UserLoginInfoForMapping](docs/UserLoginInfoForMapping.md) - [UserRegistrationInfo](docs/UserRegistrationInfo.md) - [VCSimulationIdentifier](docs/VCSimulationIdentifier.md) + - [VariableDomain](docs/VariableDomain.md) + - [VariableType](docs/VariableType.md) + - [Version](docs/Version.md) + - [VersionFlag](docs/VersionFlag.md) + - [VersionableType](docs/VersionableType.md) + - [VersionableTypeVersion](docs/VersionableTypeVersion.md) diff --git a/vcell-restclient/api/openapi.yaml b/vcell-restclient/api/openapi.yaml index b2720db146..5ca89f34f3 100644 --- a/vcell-restclient/api/openapi.yaml +++ b/vcell-restclient/api/openapi.yaml @@ -195,11 +195,126 @@ paths: application/json: schema: $ref: '#/components/schemas/BioModel' - description: OK + description: return BioModel information in JSON format + "404": + description: BioModel not found summary: Get BioModel information in JSON format by ID. tags: - Bio Model Resource x-accepts: application/json + /api/v1/fieldData: + delete: + operationId: deleteFieldData + requestBody: + content: + text/plain: + schema: + type: string + responses: + "204": + description: No Content + summary: Delete the selected field data. + tags: + - Field Data Resource + x-content-type: text/plain + x-accepts: application/json + get: + operationId: getAllFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataExternalDataIDs' + description: OK + summary: Get all of the field data for that user. + tags: + - Field Data Resource + x-content-type: application/json + x-accepts: application/json + /api/v1/fieldData/copy: + post: + operationId: copyFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataNoCopyConflict' + description: OK + summary: Copy an existing field data entry. + tags: + - Field Data Resource + x-content-type: application/json + x-accepts: application/json + /api/v1/fieldData/createFieldDataFromFile: + post: + operationId: generateFieldDataEstimate + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/FieldDataFile' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataFileOperationSpec' + description: OK + tags: + - Field Data Resource + x-content-type: multipart/form-data + x-accepts: application/json + /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: + post: + operationId: createNewFieldDataFromFileAlreadyAnalyzed + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataSaveResults' + description: OK + tags: + - Field Data Resource + x-content-type: application/json + x-accepts: application/json + /api/v1/fieldData/createFieldDataFromSimulation: + post: + operationId: createNewFieldDataFromSimulation + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalDataIdentifier' + description: OK + summary: Create new field data from a simulation. + tags: + - Field Data Resource + x-content-type: application/json + x-accepts: application/json /api/v1/helloworld: get: operationId: getHelloWorld @@ -503,10 +618,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -566,6 +681,67 @@ components: userKey: type: string type: object + AnalyzedResultsFromFieldData: + example: + extent: + x: 6.704019297950036 + "y": 3.353193347011243 + z: 3.0937452626664474 + annotation: annotation + times: + - 6.027456183070403 + - 6.027456183070403 + origin: + x: 6.778324963048013 + "y": 6.878052220127876 + z: 5.944895607614016 + isize: + x: 9 + xYZ: 9 + "y": 6 + z: 8 + name: name + varNames: + - varNames + - varNames + shortSpecData: + - - - 0 + - 0 + - - 0 + - 0 + - - - 0 + - 0 + - - 0 + - 0 + properties: + shortSpecData: + items: + items: + items: + type: integer + type: array + type: array + type: array + varNames: + items: + type: string + type: array + times: + items: + format: double + type: number + type: array + origin: + $ref: '#/components/schemas/Origin' + extent: + $ref: '#/components/schemas/Extent' + isize: + $ref: '#/components/schemas/ISize' + annotation: + type: string + name: + type: string + type: object Application: type: object BatchSystemType: @@ -650,6 +826,170 @@ components: format: int32 type: integer type: object + CartesianMesh: + example: + iSize: + x: 9 + xYZ: 9 + "y": 6 + z: 8 + chomboMesh: true + uCDInfo: + numPointsXYZ: 7 + ucdGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + ucdMembraneQuads: + - - 7 + - 7 + - - 7 + - 7 + uCDGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + numVolumeNodesX: 3 + numVolumeNodesXY: 1 + numVolumeCells: 1 + reducedUCDGridNodesV: + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + uCDMembraneQuads: + - - 9 + - 9 + - - 9 + - 9 + numVolumeNodesY: 2 + numMembraneCells: 1 + numVolumeNodesZ: 4 + numVolumeElements: 5 + numMembraneRegions: 4 + outputFields: + - "" + - "" + sizeX: 6 + membraneRegionMapSubvolumesInOut: + key: "" + numVolumeRegions: 9 + membraneConnectivityOK: true + geometryDimension: 6 + numMembraneElements: 1 + compressedBytes: "" + volumeRegionMapSubvolume: + key: 7 + sizeY: 3 + sizeZ: 6 + properties: + compressedBytes: + format: binary + type: string + uCDInfo: + $ref: '#/components/schemas/UCDInfo' + geometryDimension: + format: int32 + type: integer + volumeRegionMapSubvolume: + additionalProperties: + format: int32 + type: integer + type: object + membraneRegionMapSubvolumesInOut: + additionalProperties: {} + type: object + numMembraneElements: + format: int32 + type: integer + numMembraneRegions: + format: int32 + type: integer + numVolumeElements: + format: int32 + type: integer + numVolumeRegions: + format: int32 + type: integer + iSize: + $ref: '#/components/schemas/ISize' + sizeX: + format: int32 + type: integer + sizeY: + format: int32 + type: integer + sizeZ: + format: int32 + type: integer + membraneConnectivityOK: + type: boolean + outputFields: + items: {} + type: array + chomboMesh: + type: boolean + type: object + Coordinate: + example: + x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + properties: + x: + format: double + type: number + "y": + format: double + type: number + z: + format: double + type: number + type: object Date: example: 2022-03-10 format: date @@ -707,117 +1047,717 @@ components: - WORKEREVENT_FAILURE - JOB_FAILED type: string - HelloWorldMessage: - example: - message: message - properties: - message: - type: string - type: object - HtcJobID: - example: - server: server - batchSystemType: null - jobNumber: 6 - properties: - jobNumber: - format: int64 - type: integer - server: - type: string - batchSystemType: - $ref: '#/components/schemas/BatchSystemType' - type: object - Identity: - example: - credentials: - - credentials - - credentials - roles: - - roles - - roles - principal_name: principal_name - attributes: - - attributes - - attributes - properties: - principal_name: - type: string - roles: - items: - type: string - type: array - attributes: - items: - type: string - type: array - credentials: - items: - type: string - type: array - type: object - Instant: - example: 2022-03-10T16:15:50Z - format: date-time - type: string - KeyValue: + Extent: example: - value: 0.8008281904610115 + x: 6.704019297950036 + "y": 3.353193347011243 + z: 3.0937452626664474 properties: - value: + x: + format: double + type: number + xml: + attribute: true + "y": + format: double + type: number + xml: + attribute: true + z: + format: double type: number + xml: + attribute: true type: object - MathmodelRef: + ExternalDataIdentifier: example: - ownerName: ownerName + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 name: name - versionFlag: 2 - mmKey: 9 - ownerKey: 3 + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true properties: - mmKey: - format: int64 - type: integer + key: + $ref: '#/components/schemas/KeyValue' + owner: + $ref: '#/components/schemas/User' name: type: string - ownerName: + iD: type: string - ownerKey: - format: int64 - type: integer - versionFlag: + jobIndex: format: int32 type: integer + simulationKey: + $ref: '#/components/schemas/KeyValue' + parameterScanType: + type: boolean + dataKey: + $ref: '#/components/schemas/KeyValue' type: object - Publication: + FieldDataDBOperationSpec: example: - date: 2022-03-10T00:00:00.000+00:00 - wittid: 5 - year: 6 - citation: citation - title: title - biomodelRefs: - - bmKey: 5 - ownerName: ownerName - name: name - versionFlag: 7 - ownerKey: 2 - - bmKey: 5 - ownerName: ownerName - name: name - versionFlag: 7 - ownerKey: 2 - pubmedid: pubmedid - url: url - mathmodelRefs: - - ownerName: ownerName - name: name - versionFlag: 2 - mmKey: 9 - ownerKey: 3 - - ownerName: ownerName + owner: + testAccount: true name: name - versionFlag: 2 + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + annotation: annotation + sourceNames: + - sourceNames + - sourceNames + bIncludeSimRefs: true + opType: 0 + specEDI: + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + newExtDataIDName: newExtDataIDName + sourceOwner: + vType: + code: 1 + versionClass: "{}" + vType: 6 + bTopLevel: true + name: name + isTopLevel: true + typeName: typeName + vClass: "{}" + version: + date: 2022-03-10T00:00:00.000+00:00 + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + branchID: 9.301444243932576 + flag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionGroupAccess: + groupid: 5.962133916683182 + description: description + versionFlag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionName: versionName + annot: annot + versionDate: 2022-03-10T00:00:00.000+00:00 + versionKey: + value: 0.8008281904610115 + versionAnnot: versionAnnot + groupAccess: + groupid: 5.962133916683182 + description: description + versionBranchID: 5.637376656633329 + name: name + versionBranchPointRef: + value: 0.8008281904610115 + branchPointRefKey: + value: 0.8008281904610115 + versionOwner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + properties: + opType: + format: int32 + type: integer + specEDI: + $ref: '#/components/schemas/ExternalDataIdentifier' + owner: + $ref: '#/components/schemas/User' + newExtDataIDName: + type: string + annotation: + type: string + sourceNames: + items: + type: string + type: array + sourceOwner: + $ref: '#/components/schemas/VersionableTypeVersion' + bIncludeSimRefs: + type: boolean + type: object + FieldDataExternalDataIDs: + example: + externalDataIdentifiers: + - owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + - owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + externalDataAnnotations: + - externalDataAnnotations + - externalDataAnnotations + externalDataIDSimRefs: + key: + - value: 0.8008281904610115 + - value: 0.8008281904610115 + properties: + externalDataIdentifiers: + items: + $ref: '#/components/schemas/ExternalDataIdentifier' + type: array + externalDataAnnotations: + items: + type: string + type: array + externalDataIDSimRefs: + additionalProperties: + items: + $ref: '#/components/schemas/KeyValue' + type: array + type: object + type: object + FieldDataFile: + properties: + file: + format: binary + type: string + fileName: + type: string + type: object + FieldDataFileOperationSpec: + example: + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + extent: + x: 6.704019297950036 + "y": 3.353193347011243 + z: 3.0937452626664474 + annotation: annotation + variableTypes: + - defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 1 + variableDomain: null + legacyWarn: true + - defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 1 + variableDomain: null + legacyWarn: true + doubleSpecData: + - - - 1.4658129805029452 + - 1.4658129805029452 + - - 1.4658129805029452 + - 1.4658129805029452 + - - - 1.4658129805029452 + - 1.4658129805029452 + - - 1.4658129805029452 + - 1.4658129805029452 + opType: 0 + specEDI: + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + origin: + x: 6.778324963048013 + "y": 6.878052220127876 + z: 5.944895607614016 + varNames: + - varNames + - varNames + sourceOwner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + shortSpecData: + - - - 6 + - 6 + - - 6 + - 6 + - - - 6 + - 6 + - - 6 + - 6 + sourceSimParamScanJobIndex: 7 + times: + - 2.8841621266687802 + - 2.8841621266687802 + fieldDataName: fieldDataName + sourceSimDataKey: + value: 0.8008281904610115 + isize: + x: 9 + xYZ: 9 + "y": 6 + z: 8 + cartesianMesh: + iSize: + x: 9 + xYZ: 9 + "y": 6 + z: 8 + chomboMesh: true + uCDInfo: + numPointsXYZ: 7 + ucdGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + ucdMembraneQuads: + - - 7 + - 7 + - - 7 + - 7 + uCDGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + numVolumeNodesX: 3 + numVolumeNodesXY: 1 + numVolumeCells: 1 + reducedUCDGridNodesV: + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + uCDMembraneQuads: + - - 9 + - 9 + - - 9 + - 9 + numVolumeNodesY: 2 + numMembraneCells: 1 + numVolumeNodesZ: 4 + numVolumeElements: 5 + numMembraneRegions: 4 + outputFields: + - "" + - "" + sizeX: 6 + membraneRegionMapSubvolumesInOut: + key: "" + numVolumeRegions: 9 + membraneConnectivityOK: true + geometryDimension: 6 + numMembraneElements: 1 + compressedBytes: "" + volumeRegionMapSubvolume: + key: 7 + sizeY: 3 + sizeZ: 6 + properties: + opType: + format: int32 + type: integer + shortSpecData: + items: + items: + items: + type: integer + type: array + type: array + type: array + doubleSpecData: + items: + items: + items: + format: double + type: number + type: array + type: array + type: array + cartesianMesh: + $ref: '#/components/schemas/CartesianMesh' + specEDI: + $ref: '#/components/schemas/ExternalDataIdentifier' + varNames: + items: + type: string + type: array + variableTypes: + items: + $ref: '#/components/schemas/VariableType' + type: array + times: + items: + format: double + type: number + type: array + owner: + $ref: '#/components/schemas/User' + origin: + $ref: '#/components/schemas/Origin' + extent: + $ref: '#/components/schemas/Extent' + isize: + $ref: '#/components/schemas/ISize' + annotation: + type: string + sourceSimParamScanJobIndex: + format: int32 + type: integer + sourceSimDataKey: + $ref: '#/components/schemas/KeyValue' + sourceOwner: + $ref: '#/components/schemas/User' + fieldDataName: + type: string + type: object + FieldDataNoCopyConflict: + example: + oldNameOldExtDataIDKeyHash: + key: + value: 0.8008281904610115 + oldNameNewIDHash: + key: + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + properties: + oldNameNewIDHash: + additionalProperties: + $ref: '#/components/schemas/ExternalDataIdentifier' + type: object + oldNameOldExtDataIDKeyHash: + additionalProperties: + $ref: '#/components/schemas/KeyValue' + type: object + type: object + FieldDataSaveResults: + example: + fieldDataName: fieldDataName + fieldDataID: fieldDataID + properties: + fieldDataName: + type: string + fieldDataID: + type: string + type: object + GroupAccess: + example: + groupid: 5.962133916683182 + description: description + properties: + groupid: + type: number + description: + type: string + type: object + HelloWorldMessage: + example: + message: message + properties: + message: + type: string + type: object + HtcJobID: + example: + server: server + batchSystemType: null + jobNumber: 6 + properties: + jobNumber: + format: int64 + type: integer + server: + type: string + batchSystemType: + $ref: '#/components/schemas/BatchSystemType' + type: object + ISize: + example: + x: 9 + xYZ: 9 + "y": 6 + z: 8 + properties: + x: + format: int32 + type: integer + "y": + format: int32 + type: integer + z: + format: int32 + type: integer + xYZ: + format: int32 + type: integer + type: object + Identity: + example: + credentials: + - credentials + - credentials + roles: + - roles + - roles + principal_name: principal_name + attributes: + - attributes + - attributes + properties: + principal_name: + type: string + roles: + items: + type: string + type: array + attributes: + items: + type: string + type: array + credentials: + items: + type: string + type: array + type: object + Instant: + example: 2022-03-10T16:15:50Z + format: date-time + type: string + KeyValue: + example: + value: 0.8008281904610115 + properties: + value: + type: number + type: object + MathmodelRef: + example: + ownerName: ownerName + name: name + versionFlag: 2 + mmKey: 9 + ownerKey: 3 + properties: + mmKey: + format: int64 + type: integer + name: + type: string + ownerName: + type: string + ownerKey: + format: int64 + type: integer + versionFlag: + format: int32 + type: integer + type: object + Origin: + example: + x: 6.778324963048013 + "y": 6.878052220127876 + z: 5.944895607614016 + properties: + x: + format: double + type: number + xml: + attribute: true + "y": + format: double + type: number + xml: + attribute: true + z: + format: double + type: number + xml: + attribute: true + type: object + Publication: + example: + date: 2022-03-10T00:00:00.000+00:00 + wittid: 5 + year: 6 + citation: citation + title: title + biomodelRefs: + - bmKey: 5 + ownerName: ownerName + name: name + versionFlag: 7 + ownerKey: 2 + - bmKey: 5 + ownerName: ownerName + name: name + versionFlag: 7 + ownerKey: 2 + pubmedid: pubmedid + url: url + mathmodelRefs: + - ownerName: ownerName + name: name + versionFlag: 2 + mmKey: 9 + ownerKey: 3 + - ownerName: ownerName + name: name + versionFlag: 2 mmKey: 9 ownerKey: 3 pubKey: 0 @@ -1104,6 +2044,139 @@ components: format: double type: number type: object + UCDInfo: + example: + numPointsXYZ: 7 + ucdGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + ucdMembraneQuads: + - - 7 + - 7 + - - 7 + - 7 + uCDGridNodes: + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + numVolumeNodesX: 3 + numVolumeNodesXY: 1 + numVolumeCells: 1 + reducedUCDGridNodesV: + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + - x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + uCDMembraneQuads: + - - 9 + - 9 + - - 9 + - 9 + numVolumeNodesY: 2 + numMembraneCells: 1 + numVolumeNodesZ: 4 + properties: + ucdGridNodes: + items: + items: + items: + $ref: '#/components/schemas/Coordinate' + type: array + type: array + type: array + ucdMembraneQuads: + items: + items: + format: int32 + type: integer + type: array + type: array + reducedUCDGridNodesV: + items: + $ref: '#/components/schemas/Coordinate' + type: array + uCDGridNodes: + items: + items: + items: + $ref: '#/components/schemas/Coordinate' + type: array + type: array + type: array + uCDMembraneQuads: + items: + items: + format: int32 + type: integer + type: array + type: array + numVolumeNodesX: + format: int32 + type: integer + numVolumeNodesY: + format: int32 + type: integer + numVolumeNodesZ: + format: int32 + type: integer + numPointsXYZ: + format: int32 + type: integer + numVolumeNodesXY: + format: int32 + type: integer + numVolumeCells: + format: int32 + type: integer + numMembraneCells: + format: int32 + type: integer + type: object User: example: testAccount: true @@ -1194,6 +2267,255 @@ components: iD: type: string type: object + VariableDomain: + enum: + - VARIABLEDOMAIN_POSTPROCESSING + - VARIABLEDOMAIN_UNKNOWN + - VARIABLEDOMAIN_VOLUME + - VARIABLEDOMAIN_MEMBRANE + - VARIABLEDOMAIN_CONTOUR + - VARIABLEDOMAIN_NONSPATIAL + - VARIABLEDOMAIN_POINT + type: string + VariableType: + example: + defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 1 + variableDomain: null + legacyWarn: true + properties: + type: + format: int32 + type: integer + variableDomain: + $ref: '#/components/schemas/VariableDomain' + name: + type: string + units: + type: string + label: + type: string + legacyWarn: + type: boolean + defaultLabel: + type: string + defaultUnits: + type: string + typeName: + type: string + type: object + Version: + example: + date: 2022-03-10T00:00:00.000+00:00 + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + branchID: 9.301444243932576 + flag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionGroupAccess: + groupid: 5.962133916683182 + description: description + versionFlag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionName: versionName + annot: annot + versionDate: 2022-03-10T00:00:00.000+00:00 + versionKey: + value: 0.8008281904610115 + versionAnnot: versionAnnot + groupAccess: + groupid: 5.962133916683182 + description: description + versionBranchID: 5.637376656633329 + name: name + versionBranchPointRef: + value: 0.8008281904610115 + branchPointRefKey: + value: 0.8008281904610115 + versionOwner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + properties: + versionKey: + $ref: '#/components/schemas/KeyValue' + versionName: + type: string + versionOwner: + $ref: '#/components/schemas/User' + versionGroupAccess: + $ref: '#/components/schemas/GroupAccess' + versionBranchPointRef: + $ref: '#/components/schemas/KeyValue' + versionBranchID: + type: number + versionDate: + example: 2022-03-10 + format: date + type: string + versionFlag: + $ref: '#/components/schemas/VersionFlag' + versionAnnot: + type: string + annot: + type: string + branchID: + type: number + branchPointRefKey: + $ref: '#/components/schemas/KeyValue' + date: + example: 2022-03-10 + format: date + type: string + flag: + $ref: '#/components/schemas/VersionFlag' + groupAccess: + $ref: '#/components/schemas/GroupAccess' + name: + type: string + owner: + $ref: '#/components/schemas/User' + type: object + VersionFlag: + example: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + properties: + versionFlag: + format: int32 + type: integer + intValue: + format: int32 + type: integer + archived: + type: boolean + current: + type: boolean + published: + type: boolean + type: object + VersionableType: + example: + code: 1 + versionClass: "{}" + vType: 6 + bTopLevel: true + name: name + isTopLevel: true + typeName: typeName + vClass: "{}" + properties: + vType: + format: int32 + type: integer + name: + type: string + vClass: + type: object + bTopLevel: + type: boolean + code: + format: int32 + type: integer + isTopLevel: + type: boolean + typeName: + type: string + versionClass: + type: object + type: object + VersionableTypeVersion: + example: + vType: + code: 1 + versionClass: "{}" + vType: 6 + bTopLevel: true + name: name + isTopLevel: true + typeName: typeName + vClass: "{}" + version: + date: 2022-03-10T00:00:00.000+00:00 + owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + branchID: 9.301444243932576 + flag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionGroupAccess: + groupid: 5.962133916683182 + description: description + versionFlag: + archived: true + current: true + intValue: 7 + versionFlag: 2 + published: true + versionName: versionName + annot: annot + versionDate: 2022-03-10T00:00:00.000+00:00 + versionKey: + value: 0.8008281904610115 + versionAnnot: versionAnnot + groupAccess: + groupid: 5.962133916683182 + description: description + versionBranchID: 5.637376656633329 + name: name + versionBranchPointRef: + value: 0.8008281904610115 + branchPointRefKey: + value: 0.8008281904610115 + versionOwner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + properties: + vType: + $ref: '#/components/schemas/VersionableType' + version: + $ref: '#/components/schemas/Version' + type: object securitySchemes: openId: description: Authentication diff --git a/vcell-restclient/docs/AnalyzedResultsFromFieldData.md b/vcell-restclient/docs/AnalyzedResultsFromFieldData.md new file mode 100644 index 0000000000..fbc0edc743 --- /dev/null +++ b/vcell-restclient/docs/AnalyzedResultsFromFieldData.md @@ -0,0 +1,20 @@ + + +# AnalyzedResultsFromFieldData + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**shortSpecData** | **List<List<List<Integer>>>** | | [optional] | +|**varNames** | **List<String>** | | [optional] | +|**times** | **List<Double>** | | [optional] | +|**origin** | [**Origin**](Origin.md) | | [optional] | +|**extent** | [**Extent**](Extent.md) | | [optional] | +|**isize** | [**ISize**](ISize.md) | | [optional] | +|**annotation** | **String** | | [optional] | +|**name** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/BioModelResourceApi.md b/vcell-restclient/docs/BioModelResourceApi.md index 6f6bd87532..b2569706e5 100644 --- a/vcell-restclient/docs/BioModelResourceApi.md +++ b/vcell-restclient/docs/BioModelResourceApi.md @@ -202,7 +202,8 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | OK | - | +| **200** | return BioModel information in JSON format | - | +| **404** | BioModel not found | - | ## getBiomodelByIdWithHttpInfo @@ -268,7 +269,8 @@ No authorization required ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **200** | OK | - | +| **200** | return BioModel information in JSON format | - | +| **404** | BioModel not found | - | ## uploadBioModel diff --git a/vcell-restclient/docs/CartesianMesh.md b/vcell-restclient/docs/CartesianMesh.md new file mode 100644 index 0000000000..328206dd37 --- /dev/null +++ b/vcell-restclient/docs/CartesianMesh.md @@ -0,0 +1,28 @@ + + +# CartesianMesh + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**compressedBytes** | **File** | | [optional] | +|**uCDInfo** | [**UCDInfo**](UCDInfo.md) | | [optional] | +|**geometryDimension** | **Integer** | | [optional] | +|**volumeRegionMapSubvolume** | **Map<String, Integer>** | | [optional] | +|**membraneRegionMapSubvolumesInOut** | **Map<String, Object>** | | [optional] | +|**numMembraneElements** | **Integer** | | [optional] | +|**numMembraneRegions** | **Integer** | | [optional] | +|**numVolumeElements** | **Integer** | | [optional] | +|**numVolumeRegions** | **Integer** | | [optional] | +|**iSize** | [**ISize**](ISize.md) | | [optional] | +|**sizeX** | **Integer** | | [optional] | +|**sizeY** | **Integer** | | [optional] | +|**sizeZ** | **Integer** | | [optional] | +|**membraneConnectivityOK** | **Boolean** | | [optional] | +|**outputFields** | **List<Object>** | | [optional] | +|**chomboMesh** | **Boolean** | | [optional] | + + + diff --git a/vcell-restclient/docs/Coordinate.md b/vcell-restclient/docs/Coordinate.md new file mode 100644 index 0000000000..99fb04df19 --- /dev/null +++ b/vcell-restclient/docs/Coordinate.md @@ -0,0 +1,15 @@ + + +# Coordinate + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**x** | **Double** | | [optional] | +|**y** | **Double** | | [optional] | +|**z** | **Double** | | [optional] | + + + diff --git a/vcell-restclient/docs/Extent.md b/vcell-restclient/docs/Extent.md new file mode 100644 index 0000000000..1f6d47850e --- /dev/null +++ b/vcell-restclient/docs/Extent.md @@ -0,0 +1,15 @@ + + +# Extent + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**x** | **Double** | | [optional] | +|**y** | **Double** | | [optional] | +|**z** | **Double** | | [optional] | + + + diff --git a/vcell-restclient/docs/ExternalDataIdentifier.md b/vcell-restclient/docs/ExternalDataIdentifier.md new file mode 100644 index 0000000000..72587415ef --- /dev/null +++ b/vcell-restclient/docs/ExternalDataIdentifier.md @@ -0,0 +1,20 @@ + + +# ExternalDataIdentifier + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**key** | [**KeyValue**](KeyValue.md) | | [optional] | +|**owner** | [**User**](User.md) | | [optional] | +|**name** | **String** | | [optional] | +|**iD** | **String** | | [optional] | +|**jobIndex** | **Integer** | | [optional] | +|**simulationKey** | [**KeyValue**](KeyValue.md) | | [optional] | +|**parameterScanType** | **Boolean** | | [optional] | +|**dataKey** | [**KeyValue**](KeyValue.md) | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataDBOperationSpec.md b/vcell-restclient/docs/FieldDataDBOperationSpec.md new file mode 100644 index 0000000000..984eece2e1 --- /dev/null +++ b/vcell-restclient/docs/FieldDataDBOperationSpec.md @@ -0,0 +1,20 @@ + + +# FieldDataDBOperationSpec + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**opType** | **Integer** | | [optional] | +|**specEDI** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | +|**owner** | [**User**](User.md) | | [optional] | +|**newExtDataIDName** | **String** | | [optional] | +|**annotation** | **String** | | [optional] | +|**sourceNames** | **List<String>** | | [optional] | +|**sourceOwner** | [**VersionableTypeVersion**](VersionableTypeVersion.md) | | [optional] | +|**bIncludeSimRefs** | **Boolean** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataExternalDataIDs.md b/vcell-restclient/docs/FieldDataExternalDataIDs.md new file mode 100644 index 0000000000..9b6337e4f3 --- /dev/null +++ b/vcell-restclient/docs/FieldDataExternalDataIDs.md @@ -0,0 +1,15 @@ + + +# FieldDataExternalDataIDs + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**externalDataIdentifiers** | [**List<ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | +|**externalDataAnnotations** | **List<String>** | | [optional] | +|**externalDataIDSimRefs** | **Map<String, List<KeyValue>>** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataFileOperationSpec.md b/vcell-restclient/docs/FieldDataFileOperationSpec.md new file mode 100644 index 0000000000..66fe7fa7b9 --- /dev/null +++ b/vcell-restclient/docs/FieldDataFileOperationSpec.md @@ -0,0 +1,29 @@ + + +# FieldDataFileOperationSpec + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**opType** | **Integer** | | [optional] | +|**shortSpecData** | **List<List<List<Integer>>>** | | [optional] | +|**doubleSpecData** | **List<List<List<Double>>>** | | [optional] | +|**cartesianMesh** | [**CartesianMesh**](CartesianMesh.md) | | [optional] | +|**specEDI** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | +|**varNames** | **List<String>** | | [optional] | +|**variableTypes** | [**List<VariableType>**](VariableType.md) | | [optional] | +|**times** | **List<Double>** | | [optional] | +|**owner** | [**User**](User.md) | | [optional] | +|**origin** | [**Origin**](Origin.md) | | [optional] | +|**extent** | [**Extent**](Extent.md) | | [optional] | +|**isize** | [**ISize**](ISize.md) | | [optional] | +|**annotation** | **String** | | [optional] | +|**sourceSimParamScanJobIndex** | **Integer** | | [optional] | +|**sourceSimDataKey** | [**KeyValue**](KeyValue.md) | | [optional] | +|**sourceOwner** | [**User**](User.md) | | [optional] | +|**fieldDataName** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataNoCopyConflict.md b/vcell-restclient/docs/FieldDataNoCopyConflict.md new file mode 100644 index 0000000000..5617027c2b --- /dev/null +++ b/vcell-restclient/docs/FieldDataNoCopyConflict.md @@ -0,0 +1,14 @@ + + +# FieldDataNoCopyConflict + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**oldNameNewIDHash** | [**Map<String, ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | +|**oldNameOldExtDataIDKeyHash** | [**Map<String, KeyValue>**](KeyValue.md) | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataResourceApi.md b/vcell-restclient/docs/FieldDataResourceApi.md new file mode 100644 index 0000000000..5c94f60a88 --- /dev/null +++ b/vcell-restclient/docs/FieldDataResourceApi.md @@ -0,0 +1,802 @@ +# FieldDataResourceApi + +All URIs are relative to *https://vcell-dev.cam.uchc.edu* + +| Method | HTTP request | Description | +|------------- | ------------- | -------------| +| [**copyFieldData**](FieldDataResourceApi.md#copyFieldData) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. | +| [**copyFieldDataWithHttpInfo**](FieldDataResourceApi.md#copyFieldDataWithHttpInfo) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. | +| [**createNewFieldDataFromFileAlreadyAnalyzed**](FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | | +| [**createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo**](FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | | +| [**createNewFieldDataFromSimulation**](FieldDataResourceApi.md#createNewFieldDataFromSimulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. | +| [**createNewFieldDataFromSimulationWithHttpInfo**](FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. | +| [**deleteFieldData**](FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. | +| [**deleteFieldDataWithHttpInfo**](FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. | +| [**generateFieldDataEstimate**](FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | | +| [**generateFieldDataEstimateWithHttpInfo**](FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFile | | +| [**getAllFieldData**](FieldDataResourceApi.md#getAllFieldData) | **GET** /api/v1/fieldData | Get all of the field data for that user. | +| [**getAllFieldDataWithHttpInfo**](FieldDataResourceApi.md#getAllFieldDataWithHttpInfo) | **GET** /api/v1/fieldData | Get all of the field data for that user. | + + + +## copyFieldData + +> FieldDataNoCopyConflict copyFieldData(fieldDataDBOperationSpec) + +Copy an existing field data entry. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + FieldDataNoCopyConflict result = apiInstance.copyFieldData(fieldDataDBOperationSpec); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#copyFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## copyFieldDataWithHttpInfo + +> ApiResponse copyFieldData copyFieldDataWithHttpInfo(fieldDataDBOperationSpec) + +Copy an existing field data entry. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + ApiResponse response = apiInstance.copyFieldDataWithHttpInfo(fieldDataDBOperationSpec); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#copyFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +ApiResponse<[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + + +## createNewFieldDataFromFileAlreadyAnalyzed + +> FieldDataSaveResults createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData) + + + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = new AnalyzedResultsFromFieldData(); // AnalyzedResultsFromFieldData | + try { + FieldDataSaveResults result = apiInstance.createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromFileAlreadyAnalyzed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **analyzedResultsFromFieldData** | [**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md)| | [optional] | + +### Return type + +[**FieldDataSaveResults**](FieldDataSaveResults.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo + +> ApiResponse createNewFieldDataFromFileAlreadyAnalyzed createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData) + + + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = new AnalyzedResultsFromFieldData(); // AnalyzedResultsFromFieldData | + try { + ApiResponse response = apiInstance.createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromFileAlreadyAnalyzed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **analyzedResultsFromFieldData** | [**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md)| | [optional] | + +### Return type + +ApiResponse<[**FieldDataSaveResults**](FieldDataSaveResults.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + + +## createNewFieldDataFromSimulation + +> ExternalDataIdentifier createNewFieldDataFromSimulation(fieldDataDBOperationSpec) + +Create new field data from a simulation. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + ExternalDataIdentifier result = apiInstance.createNewFieldDataFromSimulation(fieldDataDBOperationSpec); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromSimulation"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +[**ExternalDataIdentifier**](ExternalDataIdentifier.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## createNewFieldDataFromSimulationWithHttpInfo + +> ApiResponse createNewFieldDataFromSimulation createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec) + +Create new field data from a simulation. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + ApiResponse response = apiInstance.createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromSimulation"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +ApiResponse<[**ExternalDataIdentifier**](ExternalDataIdentifier.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + + +## deleteFieldData + +> void deleteFieldData(body) + +Delete the selected field data. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + String body = "body_example"; // String | + try { + apiInstance.deleteFieldData(body); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#deleteFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **body** | **String**| | [optional] | + +### Return type + + +null (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: text/plain +- **Accept**: Not defined + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | No Content | - | + +## deleteFieldDataWithHttpInfo + +> ApiResponse deleteFieldData deleteFieldDataWithHttpInfo(body) + +Delete the selected field data. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + String body = "body_example"; // String | + try { + ApiResponse response = apiInstance.deleteFieldDataWithHttpInfo(body); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#deleteFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **body** | **String**| | [optional] | + +### Return type + + +ApiResponse + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: text/plain +- **Accept**: Not defined + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | No Content | - | + + +## generateFieldDataEstimate + +> FieldDataFileOperationSpec generateFieldDataEstimate(_file, fileName) + + + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + File _file = new File("/path/to/file"); // File | + String fileName = "fileName_example"; // String | + try { + FieldDataFileOperationSpec result = apiInstance.generateFieldDataEstimate(_file, fileName); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#generateFieldDataEstimate"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **_file** | **File**| | [optional] | +| **fileName** | **String**| | [optional] | + +### Return type + +[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: multipart/form-data +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## generateFieldDataEstimateWithHttpInfo + +> ApiResponse generateFieldDataEstimate generateFieldDataEstimateWithHttpInfo(_file, fileName) + + + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + File _file = new File("/path/to/file"); // File | + String fileName = "fileName_example"; // String | + try { + ApiResponse response = apiInstance.generateFieldDataEstimateWithHttpInfo(_file, fileName); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#generateFieldDataEstimate"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **_file** | **File**| | [optional] | +| **fileName** | **String**| | [optional] | + +### Return type + +ApiResponse<[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: multipart/form-data +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + + +## getAllFieldData + +> FieldDataExternalDataIDs getAllFieldData(fieldDataDBOperationSpec) + +Get all of the field data for that user. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + FieldDataExternalDataIDs result = apiInstance.getAllFieldData(fieldDataDBOperationSpec); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#getAllFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## getAllFieldDataWithHttpInfo + +> ApiResponse getAllFieldData getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec) + +Get all of the field data for that user. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + try { + ApiResponse response = apiInstance.getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#getAllFieldData"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | + +### Return type + +ApiResponse<[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + diff --git a/vcell-restclient/docs/FieldDataSaveResults.md b/vcell-restclient/docs/FieldDataSaveResults.md new file mode 100644 index 0000000000..6c8e913cbc --- /dev/null +++ b/vcell-restclient/docs/FieldDataSaveResults.md @@ -0,0 +1,14 @@ + + +# FieldDataSaveResults + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**fieldDataName** | **String** | | [optional] | +|**fieldDataID** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/GroupAccess.md b/vcell-restclient/docs/GroupAccess.md new file mode 100644 index 0000000000..df4847f19c --- /dev/null +++ b/vcell-restclient/docs/GroupAccess.md @@ -0,0 +1,14 @@ + + +# GroupAccess + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**groupid** | **BigDecimal** | | [optional] | +|**description** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/ISize.md b/vcell-restclient/docs/ISize.md new file mode 100644 index 0000000000..a093a715c8 --- /dev/null +++ b/vcell-restclient/docs/ISize.md @@ -0,0 +1,16 @@ + + +# ISize + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**x** | **Integer** | | [optional] | +|**y** | **Integer** | | [optional] | +|**z** | **Integer** | | [optional] | +|**xYZ** | **Integer** | | [optional] | + + + diff --git a/vcell-restclient/docs/Origin.md b/vcell-restclient/docs/Origin.md new file mode 100644 index 0000000000..50deecd79e --- /dev/null +++ b/vcell-restclient/docs/Origin.md @@ -0,0 +1,15 @@ + + +# Origin + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**x** | **Double** | | [optional] | +|**y** | **Double** | | [optional] | +|**z** | **Double** | | [optional] | + + + diff --git a/vcell-restclient/docs/UCDInfo.md b/vcell-restclient/docs/UCDInfo.md new file mode 100644 index 0000000000..122616cf52 --- /dev/null +++ b/vcell-restclient/docs/UCDInfo.md @@ -0,0 +1,24 @@ + + +# UCDInfo + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**ucdGridNodes** | **List<List<List<Coordinate>>>** | | [optional] | +|**ucdMembraneQuads** | **List<List<Integer>>** | | [optional] | +|**reducedUCDGridNodesV** | [**List<Coordinate>**](Coordinate.md) | | [optional] | +|**uCDGridNodes** | **List<List<List<Coordinate>>>** | | [optional] | +|**uCDMembraneQuads** | **List<List<Integer>>** | | [optional] | +|**numVolumeNodesX** | **Integer** | | [optional] | +|**numVolumeNodesY** | **Integer** | | [optional] | +|**numVolumeNodesZ** | **Integer** | | [optional] | +|**numPointsXYZ** | **Integer** | | [optional] | +|**numVolumeNodesXY** | **Integer** | | [optional] | +|**numVolumeCells** | **Integer** | | [optional] | +|**numMembraneCells** | **Integer** | | [optional] | + + + diff --git a/vcell-restclient/docs/UsersResourceApi.md b/vcell-restclient/docs/UsersResourceApi.md index c367edb77c..831c4b98c6 100644 --- a/vcell-restclient/docs/UsersResourceApi.md +++ b/vcell-restclient/docs/UsersResourceApi.md @@ -1141,8 +1141,8 @@ null (empty response body) |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## requestRecoveryEmailWithHttpInfo @@ -1213,8 +1213,8 @@ ApiResponse |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## unmapUser diff --git a/vcell-restclient/docs/VariableDomain.md b/vcell-restclient/docs/VariableDomain.md new file mode 100644 index 0000000000..666fdbff3b --- /dev/null +++ b/vcell-restclient/docs/VariableDomain.md @@ -0,0 +1,23 @@ + + +# VariableDomain + +## Enum + + +* `POSTPROCESSING` (value: `"VARIABLEDOMAIN_POSTPROCESSING"`) + +* `UNKNOWN` (value: `"VARIABLEDOMAIN_UNKNOWN"`) + +* `VOLUME` (value: `"VARIABLEDOMAIN_VOLUME"`) + +* `MEMBRANE` (value: `"VARIABLEDOMAIN_MEMBRANE"`) + +* `CONTOUR` (value: `"VARIABLEDOMAIN_CONTOUR"`) + +* `NONSPATIAL` (value: `"VARIABLEDOMAIN_NONSPATIAL"`) + +* `POINT` (value: `"VARIABLEDOMAIN_POINT"`) + + + diff --git a/vcell-restclient/docs/VariableType.md b/vcell-restclient/docs/VariableType.md new file mode 100644 index 0000000000..78239053ff --- /dev/null +++ b/vcell-restclient/docs/VariableType.md @@ -0,0 +1,21 @@ + + +# VariableType + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | **Integer** | | [optional] | +|**variableDomain** | **VariableDomain** | | [optional] | +|**name** | **String** | | [optional] | +|**units** | **String** | | [optional] | +|**label** | **String** | | [optional] | +|**legacyWarn** | **Boolean** | | [optional] | +|**defaultLabel** | **String** | | [optional] | +|**defaultUnits** | **String** | | [optional] | +|**typeName** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/Version.md b/vcell-restclient/docs/Version.md new file mode 100644 index 0000000000..852b2f66b0 --- /dev/null +++ b/vcell-restclient/docs/Version.md @@ -0,0 +1,29 @@ + + +# Version + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**versionKey** | [**KeyValue**](KeyValue.md) | | [optional] | +|**versionName** | **String** | | [optional] | +|**versionOwner** | [**User**](User.md) | | [optional] | +|**versionGroupAccess** | [**GroupAccess**](GroupAccess.md) | | [optional] | +|**versionBranchPointRef** | [**KeyValue**](KeyValue.md) | | [optional] | +|**versionBranchID** | **BigDecimal** | | [optional] | +|**versionDate** | **LocalDate** | | [optional] | +|**versionFlag** | [**VersionFlag**](VersionFlag.md) | | [optional] | +|**versionAnnot** | **String** | | [optional] | +|**annot** | **String** | | [optional] | +|**branchID** | **BigDecimal** | | [optional] | +|**branchPointRefKey** | [**KeyValue**](KeyValue.md) | | [optional] | +|**date** | **LocalDate** | | [optional] | +|**flag** | [**VersionFlag**](VersionFlag.md) | | [optional] | +|**groupAccess** | [**GroupAccess**](GroupAccess.md) | | [optional] | +|**name** | **String** | | [optional] | +|**owner** | [**User**](User.md) | | [optional] | + + + diff --git a/vcell-restclient/docs/VersionFlag.md b/vcell-restclient/docs/VersionFlag.md new file mode 100644 index 0000000000..3f087f8d8b --- /dev/null +++ b/vcell-restclient/docs/VersionFlag.md @@ -0,0 +1,17 @@ + + +# VersionFlag + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**versionFlag** | **Integer** | | [optional] | +|**intValue** | **Integer** | | [optional] | +|**archived** | **Boolean** | | [optional] | +|**current** | **Boolean** | | [optional] | +|**published** | **Boolean** | | [optional] | + + + diff --git a/vcell-restclient/docs/VersionableType.md b/vcell-restclient/docs/VersionableType.md new file mode 100644 index 0000000000..e02eeae45e --- /dev/null +++ b/vcell-restclient/docs/VersionableType.md @@ -0,0 +1,20 @@ + + +# VersionableType + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vType** | **Integer** | | [optional] | +|**name** | **String** | | [optional] | +|**vClass** | **Object** | | [optional] | +|**bTopLevel** | **Boolean** | | [optional] | +|**code** | **Integer** | | [optional] | +|**isTopLevel** | **Boolean** | | [optional] | +|**typeName** | **String** | | [optional] | +|**versionClass** | **Object** | | [optional] | + + + diff --git a/vcell-restclient/docs/VersionableTypeVersion.md b/vcell-restclient/docs/VersionableTypeVersion.md new file mode 100644 index 0000000000..c2c7f905fb --- /dev/null +++ b/vcell-restclient/docs/VersionableTypeVersion.md @@ -0,0 +1,14 @@ + + +# VersionableTypeVersion + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vType** | [**VersionableType**](VersionableType.md) | | [optional] | +|**version** | [**Version**](Version.md) | | [optional] | + + + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java new file mode 100644 index 0000000000..dce0628f5d --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java @@ -0,0 +1,563 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package org.vcell.restclient.api; + +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Pair; + +import org.vcell.restclient.model.AnalyzedResultsFromFieldData; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.FieldDataDBOperationSpec; +import org.vcell.restclient.model.FieldDataExternalDataIDs; +import org.vcell.restclient.model.FieldDataFileOperationSpec; +import org.vcell.restclient.model.FieldDataNoCopyConflict; +import org.vcell.restclient.model.FieldDataSaveResults; +import java.io.File; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; + +import org.apache.http.HttpEntity; +import org.apache.http.NameValuePair; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; + +import java.io.InputStream; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.io.OutputStream; +import java.net.http.HttpRequest; +import java.nio.channels.Channels; +import java.nio.channels.Pipe; +import java.net.URI; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.time.Duration; + +import java.util.ArrayList; +import java.util.StringJoiner; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.function.Consumer; + +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataResourceApi { + private final HttpClient memberVarHttpClient; + private final ObjectMapper memberVarObjectMapper; + private final String memberVarBaseUri; + private final Consumer memberVarInterceptor; + private final Duration memberVarReadTimeout; + private final Consumer> memberVarResponseInterceptor; + private final Consumer> memberVarAsyncResponseInterceptor; + + public FieldDataResourceApi() { + this(new ApiClient()); + } + + public FieldDataResourceApi(ApiClient apiClient) { + memberVarHttpClient = apiClient.getHttpClient(); + memberVarObjectMapper = apiClient.getObjectMapper(); + memberVarBaseUri = apiClient.getBaseUri(); + memberVarInterceptor = apiClient.getRequestInterceptor(); + memberVarReadTimeout = apiClient.getReadTimeout(); + memberVarResponseInterceptor = apiClient.getResponseInterceptor(); + memberVarAsyncResponseInterceptor = apiClient.getAsyncResponseInterceptor(); + } + + protected ApiException getApiException(String operationId, HttpResponse response) throws IOException { + String body = response.body() == null ? null : new String(response.body().readAllBytes()); + String message = formatExceptionMessage(operationId, response.statusCode(), body); + return new ApiException(response.statusCode(), message, response.headers(), body); + } + + private String formatExceptionMessage(String operationId, int statusCode, String body) { + if (body == null || body.isEmpty()) { + body = "[no body]"; + } + return operationId + " call failed with: " + statusCode + " - " + body; + } + + /** + * Copy an existing field data entry. + * + * @param fieldDataDBOperationSpec (optional) + * @return FieldDataNoCopyConflict + * @throws ApiException if fails to make API call + */ + public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + ApiResponse localVarResponse = copyFieldDataWithHttpInfo(fieldDataDBOperationSpec); + return localVarResponse.getData(); + } + + /** + * Copy an existing field data entry. + * + * @param fieldDataDBOperationSpec (optional) + * @return ApiResponse<FieldDataNoCopyConflict> + * @throws ApiException if fails to make API call + */ + public ApiResponse copyFieldDataWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = copyFieldDataRequestBuilder(fieldDataDBOperationSpec); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("copyFieldData", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder copyFieldDataRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData/copy"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "application/json"); + localVarRequestBuilder.header("Accept", "application/json"); + + try { + byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); + localVarRequestBuilder.method("POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + } catch (IOException e) { + throw new ApiException(e); + } + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * + * + * @param analyzedResultsFromFieldData (optional) + * @return FieldDataSaveResults + * @throws ApiException if fails to make API call + */ + public FieldDataSaveResults createNewFieldDataFromFileAlreadyAnalyzed(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + ApiResponse localVarResponse = createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData); + return localVarResponse.getData(); + } + + /** + * + * + * @param analyzedResultsFromFieldData (optional) + * @return ApiResponse<FieldDataSaveResults> + * @throws ApiException if fails to make API call + */ + public ApiResponse createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = createNewFieldDataFromFileAlreadyAnalyzedRequestBuilder(analyzedResultsFromFieldData); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("createNewFieldDataFromFileAlreadyAnalyzed", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder createNewFieldDataFromFileAlreadyAnalyzedRequestBuilder(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "application/json"); + localVarRequestBuilder.header("Accept", "application/json"); + + try { + byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(analyzedResultsFromFieldData); + localVarRequestBuilder.method("POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + } catch (IOException e) { + throw new ApiException(e); + } + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * Create new field data from a simulation. + * + * @param fieldDataDBOperationSpec (optional) + * @return ExternalDataIdentifier + * @throws ApiException if fails to make API call + */ + public ExternalDataIdentifier createNewFieldDataFromSimulation(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + ApiResponse localVarResponse = createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec); + return localVarResponse.getData(); + } + + /** + * Create new field data from a simulation. + * + * @param fieldDataDBOperationSpec (optional) + * @return ApiResponse<ExternalDataIdentifier> + * @throws ApiException if fails to make API call + */ + public ApiResponse createNewFieldDataFromSimulationWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = createNewFieldDataFromSimulationRequestBuilder(fieldDataDBOperationSpec); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("createNewFieldDataFromSimulation", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder createNewFieldDataFromSimulationRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData/createFieldDataFromSimulation"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "application/json"); + localVarRequestBuilder.header("Accept", "application/json"); + + try { + byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); + localVarRequestBuilder.method("POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + } catch (IOException e) { + throw new ApiException(e); + } + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * Delete the selected field data. + * + * @param body (optional) + * @throws ApiException if fails to make API call + */ + public void deleteFieldData(String body) throws ApiException { + deleteFieldDataWithHttpInfo(body); + } + + /** + * Delete the selected field data. + * + * @param body (optional) + * @return ApiResponse<Void> + * @throws ApiException if fails to make API call + */ + public ApiResponse deleteFieldDataWithHttpInfo(String body) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = deleteFieldDataRequestBuilder(body); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("deleteFieldData", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + null + ); + } finally { + // Drain the InputStream + while (localVarResponse.body().read() != -1) { + // Ignore + } + localVarResponse.body().close(); + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder deleteFieldDataRequestBuilder(String body) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "text/plain"); + localVarRequestBuilder.header("Accept", "application/json"); + + localVarRequestBuilder.method("DELETE", HttpRequest.BodyPublishers.ofString(body)); + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * + * + * @param _file (optional) + * @param fileName (optional) + * @return FieldDataFileOperationSpec + * @throws ApiException if fails to make API call + */ + public FieldDataFileOperationSpec generateFieldDataEstimate(File _file, String fileName) throws ApiException { + ApiResponse localVarResponse = generateFieldDataEstimateWithHttpInfo(_file, fileName); + return localVarResponse.getData(); + } + + /** + * + * + * @param _file (optional) + * @param fileName (optional) + * @return ApiResponse<FieldDataFileOperationSpec> + * @throws ApiException if fails to make API call + */ + public ApiResponse generateFieldDataEstimateWithHttpInfo(File _file, String fileName) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = generateFieldDataEstimateRequestBuilder(_file, fileName); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("generateFieldDataEstimate", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder generateFieldDataEstimateRequestBuilder(File _file, String fileName) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData/createFieldDataFromFile"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Accept", "application/json"); + + MultipartEntityBuilder multiPartBuilder = MultipartEntityBuilder.create(); + boolean hasFiles = false; + multiPartBuilder.addBinaryBody("file", _file); + hasFiles = true; + multiPartBuilder.addTextBody("fileName", fileName.toString()); + HttpEntity entity = multiPartBuilder.build(); + HttpRequest.BodyPublisher formDataPublisher; + if (hasFiles) { + Pipe pipe; + try { + pipe = Pipe.open(); + } catch (IOException e) { + throw new RuntimeException(e); + } + new Thread(() -> { + try (OutputStream outputStream = Channels.newOutputStream(pipe.sink())) { + entity.writeTo(outputStream); + } catch (IOException e) { + e.printStackTrace(); + } + }).start(); + formDataPublisher = HttpRequest.BodyPublishers.ofInputStream(() -> Channels.newInputStream(pipe.source())); + } else { + ByteArrayOutputStream formOutputStream = new ByteArrayOutputStream(); + try { + entity.writeTo(formOutputStream); + } catch (IOException e) { + throw new RuntimeException(e); + } + formDataPublisher = HttpRequest.BodyPublishers + .ofInputStream(() -> new ByteArrayInputStream(formOutputStream.toByteArray())); + } + localVarRequestBuilder + .header("Content-Type", entity.getContentType().getValue()) + .method("POST", formDataPublisher); + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * Get all of the field data for that user. + * + * @param fieldDataDBOperationSpec (optional) + * @return FieldDataExternalDataIDs + * @throws ApiException if fails to make API call + */ + public FieldDataExternalDataIDs getAllFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + ApiResponse localVarResponse = getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec); + return localVarResponse.getData(); + } + + /** + * Get all of the field data for that user. + * + * @param fieldDataDBOperationSpec (optional) + * @return ApiResponse<FieldDataExternalDataIDs> + * @throws ApiException if fails to make API call + */ + public ApiResponse getAllFieldDataWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = getAllFieldDataRequestBuilder(fieldDataDBOperationSpec); + try { + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("getAllFieldData", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } + } catch (IOException e) { + throw new ApiException(e); + } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder getAllFieldDataRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "application/json"); + localVarRequestBuilder.header("Accept", "application/json"); + + try { + byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); + localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + } catch (IOException e) { + throw new ApiException(e); + } + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } +} diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/HelloWorldApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/HelloWorldApi.java index a3023a5bf1..170af922b3 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/HelloWorldApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/HelloWorldApi.java @@ -22,6 +22,12 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.http.HttpEntity; +import org.apache.http.NameValuePair; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; + import java.io.InputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/PublicationResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/PublicationResourceApi.java index 42a0cc1847..14d9359f37 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/PublicationResourceApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/PublicationResourceApi.java @@ -22,6 +22,12 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.http.HttpEntity; +import org.apache.http.NameValuePair; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; + import java.io.InputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/SimulationResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/SimulationResourceApi.java index 43f541b946..e6030384b8 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/SimulationResourceApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/SimulationResourceApi.java @@ -23,6 +23,12 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.http.HttpEntity; +import org.apache.http.NameValuePair; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; + import java.io.InputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/UsersResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/UsersResourceApi.java index 6d4e10d646..83d1aba0fd 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/UsersResourceApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/UsersResourceApi.java @@ -26,6 +26,12 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.http.HttpEntity; +import org.apache.http.NameValuePair; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; + import java.io.InputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java new file mode 100644 index 0000000000..510e545957 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java @@ -0,0 +1,445 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * AnalyzedResultsFromFieldData + */ +@JsonPropertyOrder({ + AnalyzedResultsFromFieldData.JSON_PROPERTY_SHORT_SPEC_DATA, + AnalyzedResultsFromFieldData.JSON_PROPERTY_VAR_NAMES, + AnalyzedResultsFromFieldData.JSON_PROPERTY_TIMES, + AnalyzedResultsFromFieldData.JSON_PROPERTY_ORIGIN, + AnalyzedResultsFromFieldData.JSON_PROPERTY_EXTENT, + AnalyzedResultsFromFieldData.JSON_PROPERTY_ISIZE, + AnalyzedResultsFromFieldData.JSON_PROPERTY_ANNOTATION, + AnalyzedResultsFromFieldData.JSON_PROPERTY_NAME +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class AnalyzedResultsFromFieldData { + public static final String JSON_PROPERTY_SHORT_SPEC_DATA = "shortSpecData"; + private List>> shortSpecData; + + public static final String JSON_PROPERTY_VAR_NAMES = "varNames"; + private List varNames; + + public static final String JSON_PROPERTY_TIMES = "times"; + private List times; + + public static final String JSON_PROPERTY_ORIGIN = "origin"; + private Origin origin; + + public static final String JSON_PROPERTY_EXTENT = "extent"; + private Extent extent; + + public static final String JSON_PROPERTY_ISIZE = "isize"; + private ISize isize; + + public static final String JSON_PROPERTY_ANNOTATION = "annotation"; + private String annotation; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public AnalyzedResultsFromFieldData() { + } + + public AnalyzedResultsFromFieldData shortSpecData(List>> shortSpecData) { + this.shortSpecData = shortSpecData; + return this; + } + + public AnalyzedResultsFromFieldData addShortSpecDataItem(List> shortSpecDataItem) { + if (this.shortSpecData == null) { + this.shortSpecData = new ArrayList<>(); + } + this.shortSpecData.add(shortSpecDataItem); + return this; + } + + /** + * Get shortSpecData + * @return shortSpecData + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List>> getShortSpecData() { + return shortSpecData; + } + + + @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setShortSpecData(List>> shortSpecData) { + this.shortSpecData = shortSpecData; + } + + + public AnalyzedResultsFromFieldData varNames(List varNames) { + this.varNames = varNames; + return this; + } + + public AnalyzedResultsFromFieldData addVarNamesItem(String varNamesItem) { + if (this.varNames == null) { + this.varNames = new ArrayList<>(); + } + this.varNames.add(varNamesItem); + return this; + } + + /** + * Get varNames + * @return varNames + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VAR_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getVarNames() { + return varNames; + } + + + @JsonProperty(JSON_PROPERTY_VAR_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVarNames(List varNames) { + this.varNames = varNames; + } + + + public AnalyzedResultsFromFieldData times(List times) { + this.times = times; + return this; + } + + public AnalyzedResultsFromFieldData addTimesItem(Double timesItem) { + if (this.times == null) { + this.times = new ArrayList<>(); + } + this.times.add(timesItem); + return this; + } + + /** + * Get times + * @return times + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getTimes() { + return times; + } + + + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimes(List times) { + this.times = times; + } + + + public AnalyzedResultsFromFieldData origin(Origin origin) { + this.origin = origin; + return this; + } + + /** + * Get origin + * @return origin + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Origin getOrigin() { + return origin; + } + + + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOrigin(Origin origin) { + this.origin = origin; + } + + + public AnalyzedResultsFromFieldData extent(Extent extent) { + this.extent = extent; + return this; + } + + /** + * Get extent + * @return extent + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Extent getExtent() { + return extent; + } + + + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtent(Extent extent) { + this.extent = extent; + } + + + public AnalyzedResultsFromFieldData isize(ISize isize) { + this.isize = isize; + return this; + } + + /** + * Get isize + * @return isize + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ISize getIsize() { + return isize; + } + + + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsize(ISize isize) { + this.isize = isize; + } + + + public AnalyzedResultsFromFieldData annotation(String annotation) { + this.annotation = annotation; + return this; + } + + /** + * Get annotation + * @return annotation + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getAnnotation() { + return annotation; + } + + + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAnnotation(String annotation) { + this.annotation = annotation; + } + + + public AnalyzedResultsFromFieldData name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + /** + * Return true if this AnalyzedResultsFromFieldData object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = (AnalyzedResultsFromFieldData) o; + return Objects.equals(this.shortSpecData, analyzedResultsFromFieldData.shortSpecData) && + Objects.equals(this.varNames, analyzedResultsFromFieldData.varNames) && + Objects.equals(this.times, analyzedResultsFromFieldData.times) && + Objects.equals(this.origin, analyzedResultsFromFieldData.origin) && + Objects.equals(this.extent, analyzedResultsFromFieldData.extent) && + Objects.equals(this.isize, analyzedResultsFromFieldData.isize) && + Objects.equals(this.annotation, analyzedResultsFromFieldData.annotation) && + Objects.equals(this.name, analyzedResultsFromFieldData.name); + } + + @Override + public int hashCode() { + return Objects.hash(shortSpecData, varNames, times, origin, extent, isize, annotation, name); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AnalyzedResultsFromFieldData {\n"); + sb.append(" shortSpecData: ").append(toIndentedString(shortSpecData)).append("\n"); + sb.append(" varNames: ").append(toIndentedString(varNames)).append("\n"); + sb.append(" times: ").append(toIndentedString(times)).append("\n"); + sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); + sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); + sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); + sb.append(" annotation: ").append(toIndentedString(annotation)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `shortSpecData` to the URL query string + if (getShortSpecData() != null) { + for (int i = 0; i < getShortSpecData().size(); i++) { + if (getShortSpecData().get(i) != null) { + joiner.add(String.format("%sshortSpecData%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getShortSpecData().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + } + + // add `varNames` to the URL query string + if (getVarNames() != null) { + for (int i = 0; i < getVarNames().size(); i++) { + joiner.add(String.format("%svarNames%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getVarNames().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `times` to the URL query string + if (getTimes() != null) { + for (int i = 0; i < getTimes().size(); i++) { + joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `origin` to the URL query string + if (getOrigin() != null) { + joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); + } + + // add `extent` to the URL query string + if (getExtent() != null) { + joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); + } + + // add `isize` to the URL query string + if (getIsize() != null) { + joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); + } + + // add `annotation` to the URL query string + if (getAnnotation() != null) { + joiner.add(String.format("%sannotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java new file mode 100644 index 0000000000..b08941fe49 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java @@ -0,0 +1,733 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.io.File; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.UCDInfo; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * CartesianMesh + */ +@JsonPropertyOrder({ + CartesianMesh.JSON_PROPERTY_COMPRESSED_BYTES, + CartesianMesh.JSON_PROPERTY_U_C_D_INFO, + CartesianMesh.JSON_PROPERTY_GEOMETRY_DIMENSION, + CartesianMesh.JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME, + CartesianMesh.JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT, + CartesianMesh.JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS, + CartesianMesh.JSON_PROPERTY_NUM_MEMBRANE_REGIONS, + CartesianMesh.JSON_PROPERTY_NUM_VOLUME_ELEMENTS, + CartesianMesh.JSON_PROPERTY_NUM_VOLUME_REGIONS, + CartesianMesh.JSON_PROPERTY_I_SIZE, + CartesianMesh.JSON_PROPERTY_SIZE_X, + CartesianMesh.JSON_PROPERTY_SIZE_Y, + CartesianMesh.JSON_PROPERTY_SIZE_Z, + CartesianMesh.JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K, + CartesianMesh.JSON_PROPERTY_OUTPUT_FIELDS, + CartesianMesh.JSON_PROPERTY_CHOMBO_MESH +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class CartesianMesh { + public static final String JSON_PROPERTY_COMPRESSED_BYTES = "compressedBytes"; + private File compressedBytes; + + public static final String JSON_PROPERTY_U_C_D_INFO = "uCDInfo"; + private UCDInfo uCDInfo; + + public static final String JSON_PROPERTY_GEOMETRY_DIMENSION = "geometryDimension"; + private Integer geometryDimension; + + public static final String JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME = "volumeRegionMapSubvolume"; + private Map volumeRegionMapSubvolume = new HashMap<>(); + + public static final String JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT = "membraneRegionMapSubvolumesInOut"; + private Map membraneRegionMapSubvolumesInOut = new HashMap<>(); + + public static final String JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS = "numMembraneElements"; + private Integer numMembraneElements; + + public static final String JSON_PROPERTY_NUM_MEMBRANE_REGIONS = "numMembraneRegions"; + private Integer numMembraneRegions; + + public static final String JSON_PROPERTY_NUM_VOLUME_ELEMENTS = "numVolumeElements"; + private Integer numVolumeElements; + + public static final String JSON_PROPERTY_NUM_VOLUME_REGIONS = "numVolumeRegions"; + private Integer numVolumeRegions; + + public static final String JSON_PROPERTY_I_SIZE = "iSize"; + private ISize iSize; + + public static final String JSON_PROPERTY_SIZE_X = "sizeX"; + private Integer sizeX; + + public static final String JSON_PROPERTY_SIZE_Y = "sizeY"; + private Integer sizeY; + + public static final String JSON_PROPERTY_SIZE_Z = "sizeZ"; + private Integer sizeZ; + + public static final String JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K = "membraneConnectivityOK"; + private Boolean membraneConnectivityOK; + + public static final String JSON_PROPERTY_OUTPUT_FIELDS = "outputFields"; + private List outputFields; + + public static final String JSON_PROPERTY_CHOMBO_MESH = "chomboMesh"; + private Boolean chomboMesh; + + public CartesianMesh() { + } + + public CartesianMesh compressedBytes(File compressedBytes) { + this.compressedBytes = compressedBytes; + return this; + } + + /** + * Get compressedBytes + * @return compressedBytes + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_COMPRESSED_BYTES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public File getCompressedBytes() { + return compressedBytes; + } + + + @JsonProperty(JSON_PROPERTY_COMPRESSED_BYTES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCompressedBytes(File compressedBytes) { + this.compressedBytes = compressedBytes; + } + + + public CartesianMesh uCDInfo(UCDInfo uCDInfo) { + this.uCDInfo = uCDInfo; + return this; + } + + /** + * Get uCDInfo + * @return uCDInfo + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_U_C_D_INFO) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public UCDInfo getuCDInfo() { + return uCDInfo; + } + + + @JsonProperty(JSON_PROPERTY_U_C_D_INFO) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setuCDInfo(UCDInfo uCDInfo) { + this.uCDInfo = uCDInfo; + } + + + public CartesianMesh geometryDimension(Integer geometryDimension) { + this.geometryDimension = geometryDimension; + return this; + } + + /** + * Get geometryDimension + * @return geometryDimension + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GEOMETRY_DIMENSION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getGeometryDimension() { + return geometryDimension; + } + + + @JsonProperty(JSON_PROPERTY_GEOMETRY_DIMENSION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setGeometryDimension(Integer geometryDimension) { + this.geometryDimension = geometryDimension; + } + + + public CartesianMesh volumeRegionMapSubvolume(Map volumeRegionMapSubvolume) { + this.volumeRegionMapSubvolume = volumeRegionMapSubvolume; + return this; + } + + public CartesianMesh putVolumeRegionMapSubvolumeItem(String key, Integer volumeRegionMapSubvolumeItem) { + if (this.volumeRegionMapSubvolume == null) { + this.volumeRegionMapSubvolume = new HashMap<>(); + } + this.volumeRegionMapSubvolume.put(key, volumeRegionMapSubvolumeItem); + return this; + } + + /** + * Get volumeRegionMapSubvolume + * @return volumeRegionMapSubvolume + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Map getVolumeRegionMapSubvolume() { + return volumeRegionMapSubvolume; + } + + + @JsonProperty(JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVolumeRegionMapSubvolume(Map volumeRegionMapSubvolume) { + this.volumeRegionMapSubvolume = volumeRegionMapSubvolume; + } + + + public CartesianMesh membraneRegionMapSubvolumesInOut(Map membraneRegionMapSubvolumesInOut) { + this.membraneRegionMapSubvolumesInOut = membraneRegionMapSubvolumesInOut; + return this; + } + + public CartesianMesh putMembraneRegionMapSubvolumesInOutItem(String key, Object membraneRegionMapSubvolumesInOutItem) { + if (this.membraneRegionMapSubvolumesInOut == null) { + this.membraneRegionMapSubvolumesInOut = new HashMap<>(); + } + this.membraneRegionMapSubvolumesInOut.put(key, membraneRegionMapSubvolumesInOutItem); + return this; + } + + /** + * Get membraneRegionMapSubvolumesInOut + * @return membraneRegionMapSubvolumesInOut + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + + public Map getMembraneRegionMapSubvolumesInOut() { + return membraneRegionMapSubvolumesInOut; + } + + + @JsonProperty(JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public void setMembraneRegionMapSubvolumesInOut(Map membraneRegionMapSubvolumesInOut) { + this.membraneRegionMapSubvolumesInOut = membraneRegionMapSubvolumesInOut; + } + + + public CartesianMesh numMembraneElements(Integer numMembraneElements) { + this.numMembraneElements = numMembraneElements; + return this; + } + + /** + * Get numMembraneElements + * @return numMembraneElements + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumMembraneElements() { + return numMembraneElements; + } + + + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumMembraneElements(Integer numMembraneElements) { + this.numMembraneElements = numMembraneElements; + } + + + public CartesianMesh numMembraneRegions(Integer numMembraneRegions) { + this.numMembraneRegions = numMembraneRegions; + return this; + } + + /** + * Get numMembraneRegions + * @return numMembraneRegions + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_REGIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumMembraneRegions() { + return numMembraneRegions; + } + + + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_REGIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumMembraneRegions(Integer numMembraneRegions) { + this.numMembraneRegions = numMembraneRegions; + } + + + public CartesianMesh numVolumeElements(Integer numVolumeElements) { + this.numVolumeElements = numVolumeElements; + return this; + } + + /** + * Get numVolumeElements + * @return numVolumeElements + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_ELEMENTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeElements() { + return numVolumeElements; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_ELEMENTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeElements(Integer numVolumeElements) { + this.numVolumeElements = numVolumeElements; + } + + + public CartesianMesh numVolumeRegions(Integer numVolumeRegions) { + this.numVolumeRegions = numVolumeRegions; + return this; + } + + /** + * Get numVolumeRegions + * @return numVolumeRegions + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_REGIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeRegions() { + return numVolumeRegions; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_REGIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeRegions(Integer numVolumeRegions) { + this.numVolumeRegions = numVolumeRegions; + } + + + public CartesianMesh iSize(ISize iSize) { + this.iSize = iSize; + return this; + } + + /** + * Get iSize + * @return iSize + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_I_SIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ISize getiSize() { + return iSize; + } + + + @JsonProperty(JSON_PROPERTY_I_SIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setiSize(ISize iSize) { + this.iSize = iSize; + } + + + public CartesianMesh sizeX(Integer sizeX) { + this.sizeX = sizeX; + return this; + } + + /** + * Get sizeX + * @return sizeX + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SIZE_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSizeX() { + return sizeX; + } + + + @JsonProperty(JSON_PROPERTY_SIZE_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSizeX(Integer sizeX) { + this.sizeX = sizeX; + } + + + public CartesianMesh sizeY(Integer sizeY) { + this.sizeY = sizeY; + return this; + } + + /** + * Get sizeY + * @return sizeY + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SIZE_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSizeY() { + return sizeY; + } + + + @JsonProperty(JSON_PROPERTY_SIZE_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSizeY(Integer sizeY) { + this.sizeY = sizeY; + } + + + public CartesianMesh sizeZ(Integer sizeZ) { + this.sizeZ = sizeZ; + return this; + } + + /** + * Get sizeZ + * @return sizeZ + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SIZE_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSizeZ() { + return sizeZ; + } + + + @JsonProperty(JSON_PROPERTY_SIZE_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSizeZ(Integer sizeZ) { + this.sizeZ = sizeZ; + } + + + public CartesianMesh membraneConnectivityOK(Boolean membraneConnectivityOK) { + this.membraneConnectivityOK = membraneConnectivityOK; + return this; + } + + /** + * Get membraneConnectivityOK + * @return membraneConnectivityOK + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getMembraneConnectivityOK() { + return membraneConnectivityOK; + } + + + @JsonProperty(JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMembraneConnectivityOK(Boolean membraneConnectivityOK) { + this.membraneConnectivityOK = membraneConnectivityOK; + } + + + public CartesianMesh outputFields(List outputFields) { + this.outputFields = outputFields; + return this; + } + + public CartesianMesh addOutputFieldsItem(Object outputFieldsItem) { + if (this.outputFields == null) { + this.outputFields = new ArrayList<>(); + } + this.outputFields.add(outputFieldsItem); + return this; + } + + /** + * Get outputFields + * @return outputFields + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OUTPUT_FIELDS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getOutputFields() { + return outputFields; + } + + + @JsonProperty(JSON_PROPERTY_OUTPUT_FIELDS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOutputFields(List outputFields) { + this.outputFields = outputFields; + } + + + public CartesianMesh chomboMesh(Boolean chomboMesh) { + this.chomboMesh = chomboMesh; + return this; + } + + /** + * Get chomboMesh + * @return chomboMesh + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CHOMBO_MESH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getChomboMesh() { + return chomboMesh; + } + + + @JsonProperty(JSON_PROPERTY_CHOMBO_MESH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setChomboMesh(Boolean chomboMesh) { + this.chomboMesh = chomboMesh; + } + + + /** + * Return true if this CartesianMesh object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CartesianMesh cartesianMesh = (CartesianMesh) o; + return Objects.equals(this.compressedBytes, cartesianMesh.compressedBytes) && + Objects.equals(this.uCDInfo, cartesianMesh.uCDInfo) && + Objects.equals(this.geometryDimension, cartesianMesh.geometryDimension) && + Objects.equals(this.volumeRegionMapSubvolume, cartesianMesh.volumeRegionMapSubvolume) && + Objects.equals(this.membraneRegionMapSubvolumesInOut, cartesianMesh.membraneRegionMapSubvolumesInOut) && + Objects.equals(this.numMembraneElements, cartesianMesh.numMembraneElements) && + Objects.equals(this.numMembraneRegions, cartesianMesh.numMembraneRegions) && + Objects.equals(this.numVolumeElements, cartesianMesh.numVolumeElements) && + Objects.equals(this.numVolumeRegions, cartesianMesh.numVolumeRegions) && + Objects.equals(this.iSize, cartesianMesh.iSize) && + Objects.equals(this.sizeX, cartesianMesh.sizeX) && + Objects.equals(this.sizeY, cartesianMesh.sizeY) && + Objects.equals(this.sizeZ, cartesianMesh.sizeZ) && + Objects.equals(this.membraneConnectivityOK, cartesianMesh.membraneConnectivityOK) && + Objects.equals(this.outputFields, cartesianMesh.outputFields) && + Objects.equals(this.chomboMesh, cartesianMesh.chomboMesh); + } + + @Override + public int hashCode() { + return Objects.hash(compressedBytes, uCDInfo, geometryDimension, volumeRegionMapSubvolume, membraneRegionMapSubvolumesInOut, numMembraneElements, numMembraneRegions, numVolumeElements, numVolumeRegions, iSize, sizeX, sizeY, sizeZ, membraneConnectivityOK, outputFields, chomboMesh); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class CartesianMesh {\n"); + sb.append(" compressedBytes: ").append(toIndentedString(compressedBytes)).append("\n"); + sb.append(" uCDInfo: ").append(toIndentedString(uCDInfo)).append("\n"); + sb.append(" geometryDimension: ").append(toIndentedString(geometryDimension)).append("\n"); + sb.append(" volumeRegionMapSubvolume: ").append(toIndentedString(volumeRegionMapSubvolume)).append("\n"); + sb.append(" membraneRegionMapSubvolumesInOut: ").append(toIndentedString(membraneRegionMapSubvolumesInOut)).append("\n"); + sb.append(" numMembraneElements: ").append(toIndentedString(numMembraneElements)).append("\n"); + sb.append(" numMembraneRegions: ").append(toIndentedString(numMembraneRegions)).append("\n"); + sb.append(" numVolumeElements: ").append(toIndentedString(numVolumeElements)).append("\n"); + sb.append(" numVolumeRegions: ").append(toIndentedString(numVolumeRegions)).append("\n"); + sb.append(" iSize: ").append(toIndentedString(iSize)).append("\n"); + sb.append(" sizeX: ").append(toIndentedString(sizeX)).append("\n"); + sb.append(" sizeY: ").append(toIndentedString(sizeY)).append("\n"); + sb.append(" sizeZ: ").append(toIndentedString(sizeZ)).append("\n"); + sb.append(" membraneConnectivityOK: ").append(toIndentedString(membraneConnectivityOK)).append("\n"); + sb.append(" outputFields: ").append(toIndentedString(outputFields)).append("\n"); + sb.append(" chomboMesh: ").append(toIndentedString(chomboMesh)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `compressedBytes` to the URL query string + if (getCompressedBytes() != null) { + joiner.add(String.format("%scompressedBytes%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCompressedBytes()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `uCDInfo` to the URL query string + if (getuCDInfo() != null) { + joiner.add(getuCDInfo().toUrlQueryString(prefix + "uCDInfo" + suffix)); + } + + // add `geometryDimension` to the URL query string + if (getGeometryDimension() != null) { + joiner.add(String.format("%sgeometryDimension%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getGeometryDimension()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `volumeRegionMapSubvolume` to the URL query string + if (getVolumeRegionMapSubvolume() != null) { + for (String _key : getVolumeRegionMapSubvolume().keySet()) { + joiner.add(String.format("%svolumeRegionMapSubvolume%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), + getVolumeRegionMapSubvolume().get(_key), URLEncoder.encode(String.valueOf(getVolumeRegionMapSubvolume().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `membraneRegionMapSubvolumesInOut` to the URL query string + if (getMembraneRegionMapSubvolumesInOut() != null) { + for (String _key : getMembraneRegionMapSubvolumesInOut().keySet()) { + joiner.add(String.format("%smembraneRegionMapSubvolumesInOut%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), + getMembraneRegionMapSubvolumesInOut().get(_key), URLEncoder.encode(String.valueOf(getMembraneRegionMapSubvolumesInOut().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `numMembraneElements` to the URL query string + if (getNumMembraneElements() != null) { + joiner.add(String.format("%snumMembraneElements%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneElements()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numMembraneRegions` to the URL query string + if (getNumMembraneRegions() != null) { + joiner.add(String.format("%snumMembraneRegions%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneRegions()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeElements` to the URL query string + if (getNumVolumeElements() != null) { + joiner.add(String.format("%snumVolumeElements%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeElements()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeRegions` to the URL query string + if (getNumVolumeRegions() != null) { + joiner.add(String.format("%snumVolumeRegions%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeRegions()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `iSize` to the URL query string + if (getiSize() != null) { + joiner.add(getiSize().toUrlQueryString(prefix + "iSize" + suffix)); + } + + // add `sizeX` to the URL query string + if (getSizeX() != null) { + joiner.add(String.format("%ssizeX%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `sizeY` to the URL query string + if (getSizeY() != null) { + joiner.add(String.format("%ssizeY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `sizeZ` to the URL query string + if (getSizeZ() != null) { + joiner.add(String.format("%ssizeZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `membraneConnectivityOK` to the URL query string + if (getMembraneConnectivityOK() != null) { + joiner.add(String.format("%smembraneConnectivityOK%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getMembraneConnectivityOK()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `outputFields` to the URL query string + if (getOutputFields() != null) { + for (int i = 0; i < getOutputFields().size(); i++) { + joiner.add(String.format("%soutputFields%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getOutputFields().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `chomboMesh` to the URL query string + if (getChomboMesh() != null) { + joiner.add(String.format("%schomboMesh%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getChomboMesh()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java new file mode 100644 index 0000000000..bce1c5c840 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java @@ -0,0 +1,222 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * Coordinate + */ +@JsonPropertyOrder({ + Coordinate.JSON_PROPERTY_X, + Coordinate.JSON_PROPERTY_Y, + Coordinate.JSON_PROPERTY_Z +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class Coordinate { + public static final String JSON_PROPERTY_X = "x"; + private Double x; + + public static final String JSON_PROPERTY_Y = "y"; + private Double y; + + public static final String JSON_PROPERTY_Z = "z"; + private Double z; + + public Coordinate() { + } + + public Coordinate x(Double x) { + this.x = x; + return this; + } + + /** + * Get x + * @return x + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getX() { + return x; + } + + + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setX(Double x) { + this.x = x; + } + + + public Coordinate y(Double y) { + this.y = y; + return this; + } + + /** + * Get y + * @return y + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getY() { + return y; + } + + + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setY(Double y) { + this.y = y; + } + + + public Coordinate z(Double z) { + this.z = z; + return this; + } + + /** + * Get z + * @return z + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getZ() { + return z; + } + + + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setZ(Double z) { + this.z = z; + } + + + /** + * Return true if this Coordinate object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Coordinate coordinate = (Coordinate) o; + return Objects.equals(this.x, coordinate.x) && + Objects.equals(this.y, coordinate.y) && + Objects.equals(this.z, coordinate.z); + } + + @Override + public int hashCode() { + return Objects.hash(x, y, z); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Coordinate {\n"); + sb.append(" x: ").append(toIndentedString(x)).append("\n"); + sb.append(" y: ").append(toIndentedString(y)).append("\n"); + sb.append(" z: ").append(toIndentedString(z)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `x` to the URL query string + if (getX() != null) { + joiner.add(String.format("%sx%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `y` to the URL query string + if (getY() != null) { + joiner.add(String.format("%sy%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `z` to the URL query string + if (getZ() != null) { + joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Extent.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Extent.java new file mode 100644 index 0000000000..fdc566be08 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/Extent.java @@ -0,0 +1,222 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * Extent + */ +@JsonPropertyOrder({ + Extent.JSON_PROPERTY_X, + Extent.JSON_PROPERTY_Y, + Extent.JSON_PROPERTY_Z +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class Extent { + public static final String JSON_PROPERTY_X = "x"; + private Double x; + + public static final String JSON_PROPERTY_Y = "y"; + private Double y; + + public static final String JSON_PROPERTY_Z = "z"; + private Double z; + + public Extent() { + } + + public Extent x(Double x) { + this.x = x; + return this; + } + + /** + * Get x + * @return x + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getX() { + return x; + } + + + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setX(Double x) { + this.x = x; + } + + + public Extent y(Double y) { + this.y = y; + return this; + } + + /** + * Get y + * @return y + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getY() { + return y; + } + + + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setY(Double y) { + this.y = y; + } + + + public Extent z(Double z) { + this.z = z; + return this; + } + + /** + * Get z + * @return z + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getZ() { + return z; + } + + + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setZ(Double z) { + this.z = z; + } + + + /** + * Return true if this Extent object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Extent extent = (Extent) o; + return Objects.equals(this.x, extent.x) && + Objects.equals(this.y, extent.y) && + Objects.equals(this.z, extent.z); + } + + @Override + public int hashCode() { + return Objects.hash(x, y, z); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Extent {\n"); + sb.append(" x: ").append(toIndentedString(x)).append("\n"); + sb.append(" y: ").append(toIndentedString(y)).append("\n"); + sb.append(" z: ").append(toIndentedString(z)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `x` to the URL query string + if (getX() != null) { + joiner.add(String.format("%sx%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `y` to the URL query string + if (getY() != null) { + joiner.add(String.format("%sy%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `z` to the URL query string + if (getZ() != null) { + joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java new file mode 100644 index 0000000000..ffd8f67d9b --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java @@ -0,0 +1,404 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.User; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * ExternalDataIdentifier + */ +@JsonPropertyOrder({ + ExternalDataIdentifier.JSON_PROPERTY_KEY, + ExternalDataIdentifier.JSON_PROPERTY_OWNER, + ExternalDataIdentifier.JSON_PROPERTY_NAME, + ExternalDataIdentifier.JSON_PROPERTY_I_D, + ExternalDataIdentifier.JSON_PROPERTY_JOB_INDEX, + ExternalDataIdentifier.JSON_PROPERTY_SIMULATION_KEY, + ExternalDataIdentifier.JSON_PROPERTY_PARAMETER_SCAN_TYPE, + ExternalDataIdentifier.JSON_PROPERTY_DATA_KEY +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class ExternalDataIdentifier { + public static final String JSON_PROPERTY_KEY = "key"; + private KeyValue key; + + public static final String JSON_PROPERTY_OWNER = "owner"; + private User owner; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_I_D = "iD"; + private String iD; + + public static final String JSON_PROPERTY_JOB_INDEX = "jobIndex"; + private Integer jobIndex; + + public static final String JSON_PROPERTY_SIMULATION_KEY = "simulationKey"; + private KeyValue simulationKey; + + public static final String JSON_PROPERTY_PARAMETER_SCAN_TYPE = "parameterScanType"; + private Boolean parameterScanType; + + public static final String JSON_PROPERTY_DATA_KEY = "dataKey"; + private KeyValue dataKey; + + public ExternalDataIdentifier() { + } + + public ExternalDataIdentifier key(KeyValue key) { + this.key = key; + return this; + } + + /** + * Get key + * @return key + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getKey() { + return key; + } + + + @JsonProperty(JSON_PROPERTY_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setKey(KeyValue key) { + this.key = key; + } + + + public ExternalDataIdentifier owner(User owner) { + this.owner = owner; + return this; + } + + /** + * Get owner + * @return owner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getOwner() { + return owner; + } + + + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOwner(User owner) { + this.owner = owner; + } + + + public ExternalDataIdentifier name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + public ExternalDataIdentifier iD(String iD) { + this.iD = iD; + return this; + } + + /** + * Get iD + * @return iD + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getiD() { + return iD; + } + + + @JsonProperty(JSON_PROPERTY_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setiD(String iD) { + this.iD = iD; + } + + + public ExternalDataIdentifier jobIndex(Integer jobIndex) { + this.jobIndex = jobIndex; + return this; + } + + /** + * Get jobIndex + * @return jobIndex + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_JOB_INDEX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getJobIndex() { + return jobIndex; + } + + + @JsonProperty(JSON_PROPERTY_JOB_INDEX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setJobIndex(Integer jobIndex) { + this.jobIndex = jobIndex; + } + + + public ExternalDataIdentifier simulationKey(KeyValue simulationKey) { + this.simulationKey = simulationKey; + return this; + } + + /** + * Get simulationKey + * @return simulationKey + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SIMULATION_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getSimulationKey() { + return simulationKey; + } + + + @JsonProperty(JSON_PROPERTY_SIMULATION_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSimulationKey(KeyValue simulationKey) { + this.simulationKey = simulationKey; + } + + + public ExternalDataIdentifier parameterScanType(Boolean parameterScanType) { + this.parameterScanType = parameterScanType; + return this; + } + + /** + * Get parameterScanType + * @return parameterScanType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PARAMETER_SCAN_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getParameterScanType() { + return parameterScanType; + } + + + @JsonProperty(JSON_PROPERTY_PARAMETER_SCAN_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setParameterScanType(Boolean parameterScanType) { + this.parameterScanType = parameterScanType; + } + + + public ExternalDataIdentifier dataKey(KeyValue dataKey) { + this.dataKey = dataKey; + return this; + } + + /** + * Get dataKey + * @return dataKey + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATA_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getDataKey() { + return dataKey; + } + + + @JsonProperty(JSON_PROPERTY_DATA_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDataKey(KeyValue dataKey) { + this.dataKey = dataKey; + } + + + /** + * Return true if this ExternalDataIdentifier object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ExternalDataIdentifier externalDataIdentifier = (ExternalDataIdentifier) o; + return Objects.equals(this.key, externalDataIdentifier.key) && + Objects.equals(this.owner, externalDataIdentifier.owner) && + Objects.equals(this.name, externalDataIdentifier.name) && + Objects.equals(this.iD, externalDataIdentifier.iD) && + Objects.equals(this.jobIndex, externalDataIdentifier.jobIndex) && + Objects.equals(this.simulationKey, externalDataIdentifier.simulationKey) && + Objects.equals(this.parameterScanType, externalDataIdentifier.parameterScanType) && + Objects.equals(this.dataKey, externalDataIdentifier.dataKey); + } + + @Override + public int hashCode() { + return Objects.hash(key, owner, name, iD, jobIndex, simulationKey, parameterScanType, dataKey); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ExternalDataIdentifier {\n"); + sb.append(" key: ").append(toIndentedString(key)).append("\n"); + sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" iD: ").append(toIndentedString(iD)).append("\n"); + sb.append(" jobIndex: ").append(toIndentedString(jobIndex)).append("\n"); + sb.append(" simulationKey: ").append(toIndentedString(simulationKey)).append("\n"); + sb.append(" parameterScanType: ").append(toIndentedString(parameterScanType)).append("\n"); + sb.append(" dataKey: ").append(toIndentedString(dataKey)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `key` to the URL query string + if (getKey() != null) { + joiner.add(getKey().toUrlQueryString(prefix + "key" + suffix)); + } + + // add `owner` to the URL query string + if (getOwner() != null) { + joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); + } + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `iD` to the URL query string + if (getiD() != null) { + joiner.add(String.format("%siD%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getiD()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `jobIndex` to the URL query string + if (getJobIndex() != null) { + joiner.add(String.format("%sjobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `simulationKey` to the URL query string + if (getSimulationKey() != null) { + joiner.add(getSimulationKey().toUrlQueryString(prefix + "simulationKey" + suffix)); + } + + // add `parameterScanType` to the URL query string + if (getParameterScanType() != null) { + joiner.add(String.format("%sparameterScanType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getParameterScanType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `dataKey` to the URL query string + if (getDataKey() != null) { + joiner.add(getDataKey().toUrlQueryString(prefix + "dataKey" + suffix)); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java new file mode 100644 index 0000000000..e9c4a79580 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java @@ -0,0 +1,419 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VersionableTypeVersion; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataDBOperationSpec + */ +@JsonPropertyOrder({ + FieldDataDBOperationSpec.JSON_PROPERTY_OP_TYPE, + FieldDataDBOperationSpec.JSON_PROPERTY_SPEC_E_D_I, + FieldDataDBOperationSpec.JSON_PROPERTY_OWNER, + FieldDataDBOperationSpec.JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME, + FieldDataDBOperationSpec.JSON_PROPERTY_ANNOTATION, + FieldDataDBOperationSpec.JSON_PROPERTY_SOURCE_NAMES, + FieldDataDBOperationSpec.JSON_PROPERTY_SOURCE_OWNER, + FieldDataDBOperationSpec.JSON_PROPERTY_B_INCLUDE_SIM_REFS +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataDBOperationSpec { + public static final String JSON_PROPERTY_OP_TYPE = "opType"; + private Integer opType; + + public static final String JSON_PROPERTY_SPEC_E_D_I = "specEDI"; + private ExternalDataIdentifier specEDI; + + public static final String JSON_PROPERTY_OWNER = "owner"; + private User owner; + + public static final String JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME = "newExtDataIDName"; + private String newExtDataIDName; + + public static final String JSON_PROPERTY_ANNOTATION = "annotation"; + private String annotation; + + public static final String JSON_PROPERTY_SOURCE_NAMES = "sourceNames"; + private List sourceNames; + + public static final String JSON_PROPERTY_SOURCE_OWNER = "sourceOwner"; + private VersionableTypeVersion sourceOwner; + + public static final String JSON_PROPERTY_B_INCLUDE_SIM_REFS = "bIncludeSimRefs"; + private Boolean bIncludeSimRefs; + + public FieldDataDBOperationSpec() { + } + + public FieldDataDBOperationSpec opType(Integer opType) { + this.opType = opType; + return this; + } + + /** + * Get opType + * @return opType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OP_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getOpType() { + return opType; + } + + + @JsonProperty(JSON_PROPERTY_OP_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOpType(Integer opType) { + this.opType = opType; + } + + + public FieldDataDBOperationSpec specEDI(ExternalDataIdentifier specEDI) { + this.specEDI = specEDI; + return this; + } + + /** + * Get specEDI + * @return specEDI + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ExternalDataIdentifier getSpecEDI() { + return specEDI; + } + + + @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSpecEDI(ExternalDataIdentifier specEDI) { + this.specEDI = specEDI; + } + + + public FieldDataDBOperationSpec owner(User owner) { + this.owner = owner; + return this; + } + + /** + * Get owner + * @return owner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getOwner() { + return owner; + } + + + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOwner(User owner) { + this.owner = owner; + } + + + public FieldDataDBOperationSpec newExtDataIDName(String newExtDataIDName) { + this.newExtDataIDName = newExtDataIDName; + return this; + } + + /** + * Get newExtDataIDName + * @return newExtDataIDName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getNewExtDataIDName() { + return newExtDataIDName; + } + + + @JsonProperty(JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNewExtDataIDName(String newExtDataIDName) { + this.newExtDataIDName = newExtDataIDName; + } + + + public FieldDataDBOperationSpec annotation(String annotation) { + this.annotation = annotation; + return this; + } + + /** + * Get annotation + * @return annotation + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getAnnotation() { + return annotation; + } + + + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAnnotation(String annotation) { + this.annotation = annotation; + } + + + public FieldDataDBOperationSpec sourceNames(List sourceNames) { + this.sourceNames = sourceNames; + return this; + } + + public FieldDataDBOperationSpec addSourceNamesItem(String sourceNamesItem) { + if (this.sourceNames == null) { + this.sourceNames = new ArrayList<>(); + } + this.sourceNames.add(sourceNamesItem); + return this; + } + + /** + * Get sourceNames + * @return sourceNames + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getSourceNames() { + return sourceNames; + } + + + @JsonProperty(JSON_PROPERTY_SOURCE_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceNames(List sourceNames) { + this.sourceNames = sourceNames; + } + + + public FieldDataDBOperationSpec sourceOwner(VersionableTypeVersion sourceOwner) { + this.sourceOwner = sourceOwner; + return this; + } + + /** + * Get sourceOwner + * @return sourceOwner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VersionableTypeVersion getSourceOwner() { + return sourceOwner; + } + + + @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceOwner(VersionableTypeVersion sourceOwner) { + this.sourceOwner = sourceOwner; + } + + + public FieldDataDBOperationSpec bIncludeSimRefs(Boolean bIncludeSimRefs) { + this.bIncludeSimRefs = bIncludeSimRefs; + return this; + } + + /** + * Get bIncludeSimRefs + * @return bIncludeSimRefs + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_B_INCLUDE_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getbIncludeSimRefs() { + return bIncludeSimRefs; + } + + + @JsonProperty(JSON_PROPERTY_B_INCLUDE_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setbIncludeSimRefs(Boolean bIncludeSimRefs) { + this.bIncludeSimRefs = bIncludeSimRefs; + } + + + /** + * Return true if this FieldDataDBOperationSpec object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataDBOperationSpec fieldDataDBOperationSpec = (FieldDataDBOperationSpec) o; + return Objects.equals(this.opType, fieldDataDBOperationSpec.opType) && + Objects.equals(this.specEDI, fieldDataDBOperationSpec.specEDI) && + Objects.equals(this.owner, fieldDataDBOperationSpec.owner) && + Objects.equals(this.newExtDataIDName, fieldDataDBOperationSpec.newExtDataIDName) && + Objects.equals(this.annotation, fieldDataDBOperationSpec.annotation) && + Objects.equals(this.sourceNames, fieldDataDBOperationSpec.sourceNames) && + Objects.equals(this.sourceOwner, fieldDataDBOperationSpec.sourceOwner) && + Objects.equals(this.bIncludeSimRefs, fieldDataDBOperationSpec.bIncludeSimRefs); + } + + @Override + public int hashCode() { + return Objects.hash(opType, specEDI, owner, newExtDataIDName, annotation, sourceNames, sourceOwner, bIncludeSimRefs); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataDBOperationSpec {\n"); + sb.append(" opType: ").append(toIndentedString(opType)).append("\n"); + sb.append(" specEDI: ").append(toIndentedString(specEDI)).append("\n"); + sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); + sb.append(" newExtDataIDName: ").append(toIndentedString(newExtDataIDName)).append("\n"); + sb.append(" annotation: ").append(toIndentedString(annotation)).append("\n"); + sb.append(" sourceNames: ").append(toIndentedString(sourceNames)).append("\n"); + sb.append(" sourceOwner: ").append(toIndentedString(sourceOwner)).append("\n"); + sb.append(" bIncludeSimRefs: ").append(toIndentedString(bIncludeSimRefs)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `opType` to the URL query string + if (getOpType() != null) { + joiner.add(String.format("%sopType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getOpType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `specEDI` to the URL query string + if (getSpecEDI() != null) { + joiner.add(getSpecEDI().toUrlQueryString(prefix + "specEDI" + suffix)); + } + + // add `owner` to the URL query string + if (getOwner() != null) { + joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); + } + + // add `newExtDataIDName` to the URL query string + if (getNewExtDataIDName() != null) { + joiner.add(String.format("%snewExtDataIDName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNewExtDataIDName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `annotation` to the URL query string + if (getAnnotation() != null) { + joiner.add(String.format("%sannotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `sourceNames` to the URL query string + if (getSourceNames() != null) { + for (int i = 0; i < getSourceNames().size(); i++) { + joiner.add(String.format("%ssourceNames%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getSourceNames().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `sourceOwner` to the URL query string + if (getSourceOwner() != null) { + joiner.add(getSourceOwner().toUrlQueryString(prefix + "sourceOwner" + suffix)); + } + + // add `bIncludeSimRefs` to the URL query string + if (getbIncludeSimRefs() != null) { + joiner.add(String.format("%sbIncludeSimRefs%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getbIncludeSimRefs()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java new file mode 100644 index 0000000000..42edd8c78a --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java @@ -0,0 +1,265 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataExternalDataIDs + */ +@JsonPropertyOrder({ + FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS, + FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS, + FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataExternalDataIDs { + public static final String JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS = "externalDataIdentifiers"; + private List externalDataIdentifiers; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS = "externalDataAnnotations"; + private List externalDataAnnotations; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS = "externalDataIDSimRefs"; + private Map> externalDataIDSimRefs = new HashMap<>(); + + public FieldDataExternalDataIDs() { + } + + public FieldDataExternalDataIDs externalDataIdentifiers(List externalDataIdentifiers) { + this.externalDataIdentifiers = externalDataIdentifiers; + return this; + } + + public FieldDataExternalDataIDs addExternalDataIdentifiersItem(ExternalDataIdentifier externalDataIdentifiersItem) { + if (this.externalDataIdentifiers == null) { + this.externalDataIdentifiers = new ArrayList<>(); + } + this.externalDataIdentifiers.add(externalDataIdentifiersItem); + return this; + } + + /** + * Get externalDataIdentifiers + * @return externalDataIdentifiers + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getExternalDataIdentifiers() { + return externalDataIdentifiers; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIdentifiers(List externalDataIdentifiers) { + this.externalDataIdentifiers = externalDataIdentifiers; + } + + + public FieldDataExternalDataIDs externalDataAnnotations(List externalDataAnnotations) { + this.externalDataAnnotations = externalDataAnnotations; + return this; + } + + public FieldDataExternalDataIDs addExternalDataAnnotationsItem(String externalDataAnnotationsItem) { + if (this.externalDataAnnotations == null) { + this.externalDataAnnotations = new ArrayList<>(); + } + this.externalDataAnnotations.add(externalDataAnnotationsItem); + return this; + } + + /** + * Get externalDataAnnotations + * @return externalDataAnnotations + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getExternalDataAnnotations() { + return externalDataAnnotations; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataAnnotations(List externalDataAnnotations) { + this.externalDataAnnotations = externalDataAnnotations; + } + + + public FieldDataExternalDataIDs externalDataIDSimRefs(Map> externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; + return this; + } + + public FieldDataExternalDataIDs putExternalDataIDSimRefsItem(String key, List externalDataIDSimRefsItem) { + if (this.externalDataIDSimRefs == null) { + this.externalDataIDSimRefs = new HashMap<>(); + } + this.externalDataIDSimRefs.put(key, externalDataIDSimRefsItem); + return this; + } + + /** + * Get externalDataIDSimRefs + * @return externalDataIDSimRefs + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Map> getExternalDataIDSimRefs() { + return externalDataIDSimRefs; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIDSimRefs(Map> externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; + } + + + /** + * Return true if this FieldDataExternalDataIDs object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataExternalDataIDs fieldDataExternalDataIDs = (FieldDataExternalDataIDs) o; + return Objects.equals(this.externalDataIdentifiers, fieldDataExternalDataIDs.externalDataIdentifiers) && + Objects.equals(this.externalDataAnnotations, fieldDataExternalDataIDs.externalDataAnnotations) && + Objects.equals(this.externalDataIDSimRefs, fieldDataExternalDataIDs.externalDataIDSimRefs); + } + + @Override + public int hashCode() { + return Objects.hash(externalDataIdentifiers, externalDataAnnotations, externalDataIDSimRefs); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataExternalDataIDs {\n"); + sb.append(" externalDataIdentifiers: ").append(toIndentedString(externalDataIdentifiers)).append("\n"); + sb.append(" externalDataAnnotations: ").append(toIndentedString(externalDataAnnotations)).append("\n"); + sb.append(" externalDataIDSimRefs: ").append(toIndentedString(externalDataIDSimRefs)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `externalDataIdentifiers` to the URL query string + if (getExternalDataIdentifiers() != null) { + for (int i = 0; i < getExternalDataIdentifiers().size(); i++) { + if (getExternalDataIdentifiers().get(i) != null) { + joiner.add(getExternalDataIdentifiers().get(i).toUrlQueryString(String.format("%sexternalDataIdentifiers%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `externalDataAnnotations` to the URL query string + if (getExternalDataAnnotations() != null) { + for (int i = 0; i < getExternalDataAnnotations().size(); i++) { + joiner.add(String.format("%sexternalDataAnnotations%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getExternalDataAnnotations().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `externalDataIDSimRefs` to the URL query string + if (getExternalDataIDSimRefs() != null) { + for (String _key : getExternalDataIDSimRefs().keySet()) { + joiner.add(String.format("%sexternalDataIDSimRefs%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), + getExternalDataIDSimRefs().get(_key), URLEncoder.encode(String.valueOf(getExternalDataIDSimRefs().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java new file mode 100644 index 0000000000..d6fc358cdb --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java @@ -0,0 +1,801 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.CartesianMesh; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.Origin; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VariableType; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataFileOperationSpec + */ +@JsonPropertyOrder({ + FieldDataFileOperationSpec.JSON_PROPERTY_OP_TYPE, + FieldDataFileOperationSpec.JSON_PROPERTY_SHORT_SPEC_DATA, + FieldDataFileOperationSpec.JSON_PROPERTY_DOUBLE_SPEC_DATA, + FieldDataFileOperationSpec.JSON_PROPERTY_CARTESIAN_MESH, + FieldDataFileOperationSpec.JSON_PROPERTY_SPEC_E_D_I, + FieldDataFileOperationSpec.JSON_PROPERTY_VAR_NAMES, + FieldDataFileOperationSpec.JSON_PROPERTY_VARIABLE_TYPES, + FieldDataFileOperationSpec.JSON_PROPERTY_TIMES, + FieldDataFileOperationSpec.JSON_PROPERTY_OWNER, + FieldDataFileOperationSpec.JSON_PROPERTY_ORIGIN, + FieldDataFileOperationSpec.JSON_PROPERTY_EXTENT, + FieldDataFileOperationSpec.JSON_PROPERTY_ISIZE, + FieldDataFileOperationSpec.JSON_PROPERTY_ANNOTATION, + FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX, + FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_SIM_DATA_KEY, + FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_OWNER, + FieldDataFileOperationSpec.JSON_PROPERTY_FIELD_DATA_NAME +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataFileOperationSpec { + public static final String JSON_PROPERTY_OP_TYPE = "opType"; + private Integer opType; + + public static final String JSON_PROPERTY_SHORT_SPEC_DATA = "shortSpecData"; + private List>> shortSpecData; + + public static final String JSON_PROPERTY_DOUBLE_SPEC_DATA = "doubleSpecData"; + private List>> doubleSpecData; + + public static final String JSON_PROPERTY_CARTESIAN_MESH = "cartesianMesh"; + private CartesianMesh cartesianMesh; + + public static final String JSON_PROPERTY_SPEC_E_D_I = "specEDI"; + private ExternalDataIdentifier specEDI; + + public static final String JSON_PROPERTY_VAR_NAMES = "varNames"; + private List varNames; + + public static final String JSON_PROPERTY_VARIABLE_TYPES = "variableTypes"; + private List variableTypes; + + public static final String JSON_PROPERTY_TIMES = "times"; + private List times; + + public static final String JSON_PROPERTY_OWNER = "owner"; + private User owner; + + public static final String JSON_PROPERTY_ORIGIN = "origin"; + private Origin origin; + + public static final String JSON_PROPERTY_EXTENT = "extent"; + private Extent extent; + + public static final String JSON_PROPERTY_ISIZE = "isize"; + private ISize isize; + + public static final String JSON_PROPERTY_ANNOTATION = "annotation"; + private String annotation; + + public static final String JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX = "sourceSimParamScanJobIndex"; + private Integer sourceSimParamScanJobIndex; + + public static final String JSON_PROPERTY_SOURCE_SIM_DATA_KEY = "sourceSimDataKey"; + private KeyValue sourceSimDataKey; + + public static final String JSON_PROPERTY_SOURCE_OWNER = "sourceOwner"; + private User sourceOwner; + + public static final String JSON_PROPERTY_FIELD_DATA_NAME = "fieldDataName"; + private String fieldDataName; + + public FieldDataFileOperationSpec() { + } + + public FieldDataFileOperationSpec opType(Integer opType) { + this.opType = opType; + return this; + } + + /** + * Get opType + * @return opType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OP_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getOpType() { + return opType; + } + + + @JsonProperty(JSON_PROPERTY_OP_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOpType(Integer opType) { + this.opType = opType; + } + + + public FieldDataFileOperationSpec shortSpecData(List>> shortSpecData) { + this.shortSpecData = shortSpecData; + return this; + } + + public FieldDataFileOperationSpec addShortSpecDataItem(List> shortSpecDataItem) { + if (this.shortSpecData == null) { + this.shortSpecData = new ArrayList<>(); + } + this.shortSpecData.add(shortSpecDataItem); + return this; + } + + /** + * Get shortSpecData + * @return shortSpecData + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List>> getShortSpecData() { + return shortSpecData; + } + + + @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setShortSpecData(List>> shortSpecData) { + this.shortSpecData = shortSpecData; + } + + + public FieldDataFileOperationSpec doubleSpecData(List>> doubleSpecData) { + this.doubleSpecData = doubleSpecData; + return this; + } + + public FieldDataFileOperationSpec addDoubleSpecDataItem(List> doubleSpecDataItem) { + if (this.doubleSpecData == null) { + this.doubleSpecData = new ArrayList<>(); + } + this.doubleSpecData.add(doubleSpecDataItem); + return this; + } + + /** + * Get doubleSpecData + * @return doubleSpecData + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DOUBLE_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List>> getDoubleSpecData() { + return doubleSpecData; + } + + + @JsonProperty(JSON_PROPERTY_DOUBLE_SPEC_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDoubleSpecData(List>> doubleSpecData) { + this.doubleSpecData = doubleSpecData; + } + + + public FieldDataFileOperationSpec cartesianMesh(CartesianMesh cartesianMesh) { + this.cartesianMesh = cartesianMesh; + return this; + } + + /** + * Get cartesianMesh + * @return cartesianMesh + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CARTESIAN_MESH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public CartesianMesh getCartesianMesh() { + return cartesianMesh; + } + + + @JsonProperty(JSON_PROPERTY_CARTESIAN_MESH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCartesianMesh(CartesianMesh cartesianMesh) { + this.cartesianMesh = cartesianMesh; + } + + + public FieldDataFileOperationSpec specEDI(ExternalDataIdentifier specEDI) { + this.specEDI = specEDI; + return this; + } + + /** + * Get specEDI + * @return specEDI + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ExternalDataIdentifier getSpecEDI() { + return specEDI; + } + + + @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSpecEDI(ExternalDataIdentifier specEDI) { + this.specEDI = specEDI; + } + + + public FieldDataFileOperationSpec varNames(List varNames) { + this.varNames = varNames; + return this; + } + + public FieldDataFileOperationSpec addVarNamesItem(String varNamesItem) { + if (this.varNames == null) { + this.varNames = new ArrayList<>(); + } + this.varNames.add(varNamesItem); + return this; + } + + /** + * Get varNames + * @return varNames + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VAR_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getVarNames() { + return varNames; + } + + + @JsonProperty(JSON_PROPERTY_VAR_NAMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVarNames(List varNames) { + this.varNames = varNames; + } + + + public FieldDataFileOperationSpec variableTypes(List variableTypes) { + this.variableTypes = variableTypes; + return this; + } + + public FieldDataFileOperationSpec addVariableTypesItem(VariableType variableTypesItem) { + if (this.variableTypes == null) { + this.variableTypes = new ArrayList<>(); + } + this.variableTypes.add(variableTypesItem); + return this; + } + + /** + * Get variableTypes + * @return variableTypes + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VARIABLE_TYPES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getVariableTypes() { + return variableTypes; + } + + + @JsonProperty(JSON_PROPERTY_VARIABLE_TYPES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVariableTypes(List variableTypes) { + this.variableTypes = variableTypes; + } + + + public FieldDataFileOperationSpec times(List times) { + this.times = times; + return this; + } + + public FieldDataFileOperationSpec addTimesItem(Double timesItem) { + if (this.times == null) { + this.times = new ArrayList<>(); + } + this.times.add(timesItem); + return this; + } + + /** + * Get times + * @return times + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getTimes() { + return times; + } + + + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimes(List times) { + this.times = times; + } + + + public FieldDataFileOperationSpec owner(User owner) { + this.owner = owner; + return this; + } + + /** + * Get owner + * @return owner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getOwner() { + return owner; + } + + + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOwner(User owner) { + this.owner = owner; + } + + + public FieldDataFileOperationSpec origin(Origin origin) { + this.origin = origin; + return this; + } + + /** + * Get origin + * @return origin + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Origin getOrigin() { + return origin; + } + + + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOrigin(Origin origin) { + this.origin = origin; + } + + + public FieldDataFileOperationSpec extent(Extent extent) { + this.extent = extent; + return this; + } + + /** + * Get extent + * @return extent + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Extent getExtent() { + return extent; + } + + + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtent(Extent extent) { + this.extent = extent; + } + + + public FieldDataFileOperationSpec isize(ISize isize) { + this.isize = isize; + return this; + } + + /** + * Get isize + * @return isize + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ISize getIsize() { + return isize; + } + + + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsize(ISize isize) { + this.isize = isize; + } + + + public FieldDataFileOperationSpec annotation(String annotation) { + this.annotation = annotation; + return this; + } + + /** + * Get annotation + * @return annotation + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getAnnotation() { + return annotation; + } + + + @JsonProperty(JSON_PROPERTY_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAnnotation(String annotation) { + this.annotation = annotation; + } + + + public FieldDataFileOperationSpec sourceSimParamScanJobIndex(Integer sourceSimParamScanJobIndex) { + this.sourceSimParamScanJobIndex = sourceSimParamScanJobIndex; + return this; + } + + /** + * Get sourceSimParamScanJobIndex + * @return sourceSimParamScanJobIndex + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSourceSimParamScanJobIndex() { + return sourceSimParamScanJobIndex; + } + + + @JsonProperty(JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSimParamScanJobIndex(Integer sourceSimParamScanJobIndex) { + this.sourceSimParamScanJobIndex = sourceSimParamScanJobIndex; + } + + + public FieldDataFileOperationSpec sourceSimDataKey(KeyValue sourceSimDataKey) { + this.sourceSimDataKey = sourceSimDataKey; + return this; + } + + /** + * Get sourceSimDataKey + * @return sourceSimDataKey + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SIM_DATA_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getSourceSimDataKey() { + return sourceSimDataKey; + } + + + @JsonProperty(JSON_PROPERTY_SOURCE_SIM_DATA_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSimDataKey(KeyValue sourceSimDataKey) { + this.sourceSimDataKey = sourceSimDataKey; + } + + + public FieldDataFileOperationSpec sourceOwner(User sourceOwner) { + this.sourceOwner = sourceOwner; + return this; + } + + /** + * Get sourceOwner + * @return sourceOwner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getSourceOwner() { + return sourceOwner; + } + + + @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceOwner(User sourceOwner) { + this.sourceOwner = sourceOwner; + } + + + public FieldDataFileOperationSpec fieldDataName(String fieldDataName) { + this.fieldDataName = fieldDataName; + return this; + } + + /** + * Get fieldDataName + * @return fieldDataName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getFieldDataName() { + return fieldDataName; + } + + + @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setFieldDataName(String fieldDataName) { + this.fieldDataName = fieldDataName; + } + + + /** + * Return true if this FieldDataFileOperationSpec object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataFileOperationSpec fieldDataFileOperationSpec = (FieldDataFileOperationSpec) o; + return Objects.equals(this.opType, fieldDataFileOperationSpec.opType) && + Objects.equals(this.shortSpecData, fieldDataFileOperationSpec.shortSpecData) && + Objects.equals(this.doubleSpecData, fieldDataFileOperationSpec.doubleSpecData) && + Objects.equals(this.cartesianMesh, fieldDataFileOperationSpec.cartesianMesh) && + Objects.equals(this.specEDI, fieldDataFileOperationSpec.specEDI) && + Objects.equals(this.varNames, fieldDataFileOperationSpec.varNames) && + Objects.equals(this.variableTypes, fieldDataFileOperationSpec.variableTypes) && + Objects.equals(this.times, fieldDataFileOperationSpec.times) && + Objects.equals(this.owner, fieldDataFileOperationSpec.owner) && + Objects.equals(this.origin, fieldDataFileOperationSpec.origin) && + Objects.equals(this.extent, fieldDataFileOperationSpec.extent) && + Objects.equals(this.isize, fieldDataFileOperationSpec.isize) && + Objects.equals(this.annotation, fieldDataFileOperationSpec.annotation) && + Objects.equals(this.sourceSimParamScanJobIndex, fieldDataFileOperationSpec.sourceSimParamScanJobIndex) && + Objects.equals(this.sourceSimDataKey, fieldDataFileOperationSpec.sourceSimDataKey) && + Objects.equals(this.sourceOwner, fieldDataFileOperationSpec.sourceOwner) && + Objects.equals(this.fieldDataName, fieldDataFileOperationSpec.fieldDataName); + } + + @Override + public int hashCode() { + return Objects.hash(opType, shortSpecData, doubleSpecData, cartesianMesh, specEDI, varNames, variableTypes, times, owner, origin, extent, isize, annotation, sourceSimParamScanJobIndex, sourceSimDataKey, sourceOwner, fieldDataName); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataFileOperationSpec {\n"); + sb.append(" opType: ").append(toIndentedString(opType)).append("\n"); + sb.append(" shortSpecData: ").append(toIndentedString(shortSpecData)).append("\n"); + sb.append(" doubleSpecData: ").append(toIndentedString(doubleSpecData)).append("\n"); + sb.append(" cartesianMesh: ").append(toIndentedString(cartesianMesh)).append("\n"); + sb.append(" specEDI: ").append(toIndentedString(specEDI)).append("\n"); + sb.append(" varNames: ").append(toIndentedString(varNames)).append("\n"); + sb.append(" variableTypes: ").append(toIndentedString(variableTypes)).append("\n"); + sb.append(" times: ").append(toIndentedString(times)).append("\n"); + sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); + sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); + sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); + sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); + sb.append(" annotation: ").append(toIndentedString(annotation)).append("\n"); + sb.append(" sourceSimParamScanJobIndex: ").append(toIndentedString(sourceSimParamScanJobIndex)).append("\n"); + sb.append(" sourceSimDataKey: ").append(toIndentedString(sourceSimDataKey)).append("\n"); + sb.append(" sourceOwner: ").append(toIndentedString(sourceOwner)).append("\n"); + sb.append(" fieldDataName: ").append(toIndentedString(fieldDataName)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `opType` to the URL query string + if (getOpType() != null) { + joiner.add(String.format("%sopType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getOpType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `shortSpecData` to the URL query string + if (getShortSpecData() != null) { + for (int i = 0; i < getShortSpecData().size(); i++) { + if (getShortSpecData().get(i) != null) { + joiner.add(String.format("%sshortSpecData%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getShortSpecData().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + } + + // add `doubleSpecData` to the URL query string + if (getDoubleSpecData() != null) { + for (int i = 0; i < getDoubleSpecData().size(); i++) { + if (getDoubleSpecData().get(i) != null) { + joiner.add(String.format("%sdoubleSpecData%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getDoubleSpecData().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + } + + // add `cartesianMesh` to the URL query string + if (getCartesianMesh() != null) { + joiner.add(getCartesianMesh().toUrlQueryString(prefix + "cartesianMesh" + suffix)); + } + + // add `specEDI` to the URL query string + if (getSpecEDI() != null) { + joiner.add(getSpecEDI().toUrlQueryString(prefix + "specEDI" + suffix)); + } + + // add `varNames` to the URL query string + if (getVarNames() != null) { + for (int i = 0; i < getVarNames().size(); i++) { + joiner.add(String.format("%svarNames%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getVarNames().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `variableTypes` to the URL query string + if (getVariableTypes() != null) { + for (int i = 0; i < getVariableTypes().size(); i++) { + if (getVariableTypes().get(i) != null) { + joiner.add(getVariableTypes().get(i).toUrlQueryString(String.format("%svariableTypes%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `times` to the URL query string + if (getTimes() != null) { + for (int i = 0; i < getTimes().size(); i++) { + joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `owner` to the URL query string + if (getOwner() != null) { + joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); + } + + // add `origin` to the URL query string + if (getOrigin() != null) { + joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); + } + + // add `extent` to the URL query string + if (getExtent() != null) { + joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); + } + + // add `isize` to the URL query string + if (getIsize() != null) { + joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); + } + + // add `annotation` to the URL query string + if (getAnnotation() != null) { + joiner.add(String.format("%sannotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `sourceSimParamScanJobIndex` to the URL query string + if (getSourceSimParamScanJobIndex() != null) { + joiner.add(String.format("%ssourceSimParamScanJobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSourceSimParamScanJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `sourceSimDataKey` to the URL query string + if (getSourceSimDataKey() != null) { + joiner.add(getSourceSimDataKey().toUrlQueryString(prefix + "sourceSimDataKey" + suffix)); + } + + // add `sourceOwner` to the URL query string + if (getSourceOwner() != null) { + joiner.add(getSourceOwner().toUrlQueryString(prefix + "sourceOwner" + suffix)); + } + + // add `fieldDataName` to the URL query string + if (getFieldDataName() != null) { + joiner.add(String.format("%sfieldDataName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldDataName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java new file mode 100644 index 0000000000..3cdad94c8f --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java @@ -0,0 +1,216 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataNoCopyConflict + */ +@JsonPropertyOrder({ + FieldDataNoCopyConflict.JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH, + FieldDataNoCopyConflict.JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataNoCopyConflict { + public static final String JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH = "oldNameNewIDHash"; + private Map oldNameNewIDHash = new HashMap<>(); + + public static final String JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH = "oldNameOldExtDataIDKeyHash"; + private Map oldNameOldExtDataIDKeyHash = new HashMap<>(); + + public FieldDataNoCopyConflict() { + } + + public FieldDataNoCopyConflict oldNameNewIDHash(Map oldNameNewIDHash) { + this.oldNameNewIDHash = oldNameNewIDHash; + return this; + } + + public FieldDataNoCopyConflict putOldNameNewIDHashItem(String key, ExternalDataIdentifier oldNameNewIDHashItem) { + if (this.oldNameNewIDHash == null) { + this.oldNameNewIDHash = new HashMap<>(); + } + this.oldNameNewIDHash.put(key, oldNameNewIDHashItem); + return this; + } + + /** + * Get oldNameNewIDHash + * @return oldNameNewIDHash + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Map getOldNameNewIDHash() { + return oldNameNewIDHash; + } + + + @JsonProperty(JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOldNameNewIDHash(Map oldNameNewIDHash) { + this.oldNameNewIDHash = oldNameNewIDHash; + } + + + public FieldDataNoCopyConflict oldNameOldExtDataIDKeyHash(Map oldNameOldExtDataIDKeyHash) { + this.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKeyHash; + return this; + } + + public FieldDataNoCopyConflict putOldNameOldExtDataIDKeyHashItem(String key, KeyValue oldNameOldExtDataIDKeyHashItem) { + if (this.oldNameOldExtDataIDKeyHash == null) { + this.oldNameOldExtDataIDKeyHash = new HashMap<>(); + } + this.oldNameOldExtDataIDKeyHash.put(key, oldNameOldExtDataIDKeyHashItem); + return this; + } + + /** + * Get oldNameOldExtDataIDKeyHash + * @return oldNameOldExtDataIDKeyHash + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Map getOldNameOldExtDataIDKeyHash() { + return oldNameOldExtDataIDKeyHash; + } + + + @JsonProperty(JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOldNameOldExtDataIDKeyHash(Map oldNameOldExtDataIDKeyHash) { + this.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKeyHash; + } + + + /** + * Return true if this FieldDataNoCopyConflict object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataNoCopyConflict fieldDataNoCopyConflict = (FieldDataNoCopyConflict) o; + return Objects.equals(this.oldNameNewIDHash, fieldDataNoCopyConflict.oldNameNewIDHash) && + Objects.equals(this.oldNameOldExtDataIDKeyHash, fieldDataNoCopyConflict.oldNameOldExtDataIDKeyHash); + } + + @Override + public int hashCode() { + return Objects.hash(oldNameNewIDHash, oldNameOldExtDataIDKeyHash); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataNoCopyConflict {\n"); + sb.append(" oldNameNewIDHash: ").append(toIndentedString(oldNameNewIDHash)).append("\n"); + sb.append(" oldNameOldExtDataIDKeyHash: ").append(toIndentedString(oldNameOldExtDataIDKeyHash)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `oldNameNewIDHash` to the URL query string + if (getOldNameNewIDHash() != null) { + for (String _key : getOldNameNewIDHash().keySet()) { + if (getOldNameNewIDHash().get(_key) != null) { + joiner.add(getOldNameNewIDHash().get(_key).toUrlQueryString(String.format("%soldNameNewIDHash%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix)))); + } + } + } + + // add `oldNameOldExtDataIDKeyHash` to the URL query string + if (getOldNameOldExtDataIDKeyHash() != null) { + for (String _key : getOldNameOldExtDataIDKeyHash().keySet()) { + if (getOldNameOldExtDataIDKeyHash().get(_key) != null) { + joiner.add(getOldNameOldExtDataIDKeyHash().get(_key).toUrlQueryString(String.format("%soldNameOldExtDataIDKeyHash%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix)))); + } + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java new file mode 100644 index 0000000000..4652fafe77 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java @@ -0,0 +1,186 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataSaveResults + */ +@JsonPropertyOrder({ + FieldDataSaveResults.JSON_PROPERTY_FIELD_DATA_NAME, + FieldDataSaveResults.JSON_PROPERTY_FIELD_DATA_I_D +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataSaveResults { + public static final String JSON_PROPERTY_FIELD_DATA_NAME = "fieldDataName"; + private String fieldDataName; + + public static final String JSON_PROPERTY_FIELD_DATA_I_D = "fieldDataID"; + private String fieldDataID; + + public FieldDataSaveResults() { + } + + public FieldDataSaveResults fieldDataName(String fieldDataName) { + this.fieldDataName = fieldDataName; + return this; + } + + /** + * Get fieldDataName + * @return fieldDataName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getFieldDataName() { + return fieldDataName; + } + + + @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setFieldDataName(String fieldDataName) { + this.fieldDataName = fieldDataName; + } + + + public FieldDataSaveResults fieldDataID(String fieldDataID) { + this.fieldDataID = fieldDataID; + return this; + } + + /** + * Get fieldDataID + * @return fieldDataID + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_FIELD_DATA_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getFieldDataID() { + return fieldDataID; + } + + + @JsonProperty(JSON_PROPERTY_FIELD_DATA_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setFieldDataID(String fieldDataID) { + this.fieldDataID = fieldDataID; + } + + + /** + * Return true if this FieldDataSaveResults object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataSaveResults fieldDataSaveResults = (FieldDataSaveResults) o; + return Objects.equals(this.fieldDataName, fieldDataSaveResults.fieldDataName) && + Objects.equals(this.fieldDataID, fieldDataSaveResults.fieldDataID); + } + + @Override + public int hashCode() { + return Objects.hash(fieldDataName, fieldDataID); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataSaveResults {\n"); + sb.append(" fieldDataName: ").append(toIndentedString(fieldDataName)).append("\n"); + sb.append(" fieldDataID: ").append(toIndentedString(fieldDataID)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `fieldDataName` to the URL query string + if (getFieldDataName() != null) { + joiner.add(String.format("%sfieldDataName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldDataName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `fieldDataID` to the URL query string + if (getFieldDataID() != null) { + joiner.add(String.format("%sfieldDataID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldDataID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java new file mode 100644 index 0000000000..4421ad8758 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java @@ -0,0 +1,187 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.math.BigDecimal; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * GroupAccess + */ +@JsonPropertyOrder({ + GroupAccess.JSON_PROPERTY_GROUPID, + GroupAccess.JSON_PROPERTY_DESCRIPTION +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class GroupAccess { + public static final String JSON_PROPERTY_GROUPID = "groupid"; + private BigDecimal groupid; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + private String description; + + public GroupAccess() { + } + + public GroupAccess groupid(BigDecimal groupid) { + this.groupid = groupid; + return this; + } + + /** + * Get groupid + * @return groupid + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GROUPID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getGroupid() { + return groupid; + } + + + @JsonProperty(JSON_PROPERTY_GROUPID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setGroupid(BigDecimal groupid) { + this.groupid = groupid; + } + + + public GroupAccess description(String description) { + this.description = description; + return this; + } + + /** + * Get description + * @return description + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getDescription() { + return description; + } + + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(String description) { + this.description = description; + } + + + /** + * Return true if this GroupAccess object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GroupAccess groupAccess = (GroupAccess) o; + return Objects.equals(this.groupid, groupAccess.groupid) && + Objects.equals(this.description, groupAccess.description); + } + + @Override + public int hashCode() { + return Objects.hash(groupid, description); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class GroupAccess {\n"); + sb.append(" groupid: ").append(toIndentedString(groupid)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `groupid` to the URL query string + if (getGroupid() != null) { + joiner.add(String.format("%sgroupid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getGroupid()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add(String.format("%sdescription%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDescription()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java new file mode 100644 index 0000000000..806648c19f --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java @@ -0,0 +1,258 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * ISize + */ +@JsonPropertyOrder({ + ISize.JSON_PROPERTY_X, + ISize.JSON_PROPERTY_Y, + ISize.JSON_PROPERTY_Z, + ISize.JSON_PROPERTY_X_Y_Z +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class ISize { + public static final String JSON_PROPERTY_X = "x"; + private Integer x; + + public static final String JSON_PROPERTY_Y = "y"; + private Integer y; + + public static final String JSON_PROPERTY_Z = "z"; + private Integer z; + + public static final String JSON_PROPERTY_X_Y_Z = "xYZ"; + private Integer xYZ; + + public ISize() { + } + + public ISize x(Integer x) { + this.x = x; + return this; + } + + /** + * Get x + * @return x + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getX() { + return x; + } + + + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setX(Integer x) { + this.x = x; + } + + + public ISize y(Integer y) { + this.y = y; + return this; + } + + /** + * Get y + * @return y + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getY() { + return y; + } + + + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setY(Integer y) { + this.y = y; + } + + + public ISize z(Integer z) { + this.z = z; + return this; + } + + /** + * Get z + * @return z + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getZ() { + return z; + } + + + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setZ(Integer z) { + this.z = z; + } + + + public ISize xYZ(Integer xYZ) { + this.xYZ = xYZ; + return this; + } + + /** + * Get xYZ + * @return xYZ + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_X_Y_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getxYZ() { + return xYZ; + } + + + @JsonProperty(JSON_PROPERTY_X_Y_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setxYZ(Integer xYZ) { + this.xYZ = xYZ; + } + + + /** + * Return true if this ISize object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ISize isize = (ISize) o; + return Objects.equals(this.x, isize.x) && + Objects.equals(this.y, isize.y) && + Objects.equals(this.z, isize.z) && + Objects.equals(this.xYZ, isize.xYZ); + } + + @Override + public int hashCode() { + return Objects.hash(x, y, z, xYZ); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ISize {\n"); + sb.append(" x: ").append(toIndentedString(x)).append("\n"); + sb.append(" y: ").append(toIndentedString(y)).append("\n"); + sb.append(" z: ").append(toIndentedString(z)).append("\n"); + sb.append(" xYZ: ").append(toIndentedString(xYZ)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `x` to the URL query string + if (getX() != null) { + joiner.add(String.format("%sx%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `y` to the URL query string + if (getY() != null) { + joiner.add(String.format("%sy%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `z` to the URL query string + if (getZ() != null) { + joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `xYZ` to the URL query string + if (getxYZ() != null) { + joiner.add(String.format("%sxYZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getxYZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Origin.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Origin.java new file mode 100644 index 0000000000..771e92539c --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/Origin.java @@ -0,0 +1,222 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * Origin + */ +@JsonPropertyOrder({ + Origin.JSON_PROPERTY_X, + Origin.JSON_PROPERTY_Y, + Origin.JSON_PROPERTY_Z +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class Origin { + public static final String JSON_PROPERTY_X = "x"; + private Double x; + + public static final String JSON_PROPERTY_Y = "y"; + private Double y; + + public static final String JSON_PROPERTY_Z = "z"; + private Double z; + + public Origin() { + } + + public Origin x(Double x) { + this.x = x; + return this; + } + + /** + * Get x + * @return x + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getX() { + return x; + } + + + @JsonProperty(JSON_PROPERTY_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setX(Double x) { + this.x = x; + } + + + public Origin y(Double y) { + this.y = y; + return this; + } + + /** + * Get y + * @return y + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getY() { + return y; + } + + + @JsonProperty(JSON_PROPERTY_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setY(Double y) { + this.y = y; + } + + + public Origin z(Double z) { + this.z = z; + return this; + } + + /** + * Get z + * @return z + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Double getZ() { + return z; + } + + + @JsonProperty(JSON_PROPERTY_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setZ(Double z) { + this.z = z; + } + + + /** + * Return true if this Origin object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Origin origin = (Origin) o; + return Objects.equals(this.x, origin.x) && + Objects.equals(this.y, origin.y) && + Objects.equals(this.z, origin.z); + } + + @Override + public int hashCode() { + return Objects.hash(x, y, z); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Origin {\n"); + sb.append(" x: ").append(toIndentedString(x)).append("\n"); + sb.append(" y: ").append(toIndentedString(y)).append("\n"); + sb.append(" z: ").append(toIndentedString(z)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `x` to the URL query string + if (getX() != null) { + joiner.add(String.format("%sx%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `y` to the URL query string + if (getY() != null) { + joiner.add(String.format("%sy%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `z` to the URL query string + if (getZ() != null) { + joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java new file mode 100644 index 0000000000..1e5b76abbc --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java @@ -0,0 +1,614 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.Coordinate; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * UCDInfo + */ +@JsonPropertyOrder({ + UCDInfo.JSON_PROPERTY_UCD_GRID_NODES, + UCDInfo.JSON_PROPERTY_UCD_MEMBRANE_QUADS, + UCDInfo.JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V, + UCDInfo.JSON_PROPERTY_U_C_D_GRID_NODES, + UCDInfo.JSON_PROPERTY_U_C_D_MEMBRANE_QUADS, + UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_X, + UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_Y, + UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_Z, + UCDInfo.JSON_PROPERTY_NUM_POINTS_X_Y_Z, + UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_X_Y, + UCDInfo.JSON_PROPERTY_NUM_VOLUME_CELLS, + UCDInfo.JSON_PROPERTY_NUM_MEMBRANE_CELLS +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class UCDInfo { + public static final String JSON_PROPERTY_UCD_GRID_NODES = "ucdGridNodes"; + private List>> ucdGridNodes; + + public static final String JSON_PROPERTY_UCD_MEMBRANE_QUADS = "ucdMembraneQuads"; + private List> ucdMembraneQuads; + + public static final String JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V = "reducedUCDGridNodesV"; + private List reducedUCDGridNodesV; + + public static final String JSON_PROPERTY_U_C_D_GRID_NODES = "uCDGridNodes"; + private List>> uCDGridNodes; + + public static final String JSON_PROPERTY_U_C_D_MEMBRANE_QUADS = "uCDMembraneQuads"; + private List> uCDMembraneQuads; + + public static final String JSON_PROPERTY_NUM_VOLUME_NODES_X = "numVolumeNodesX"; + private Integer numVolumeNodesX; + + public static final String JSON_PROPERTY_NUM_VOLUME_NODES_Y = "numVolumeNodesY"; + private Integer numVolumeNodesY; + + public static final String JSON_PROPERTY_NUM_VOLUME_NODES_Z = "numVolumeNodesZ"; + private Integer numVolumeNodesZ; + + public static final String JSON_PROPERTY_NUM_POINTS_X_Y_Z = "numPointsXYZ"; + private Integer numPointsXYZ; + + public static final String JSON_PROPERTY_NUM_VOLUME_NODES_X_Y = "numVolumeNodesXY"; + private Integer numVolumeNodesXY; + + public static final String JSON_PROPERTY_NUM_VOLUME_CELLS = "numVolumeCells"; + private Integer numVolumeCells; + + public static final String JSON_PROPERTY_NUM_MEMBRANE_CELLS = "numMembraneCells"; + private Integer numMembraneCells; + + public UCDInfo() { + } + + public UCDInfo ucdGridNodes(List>> ucdGridNodes) { + this.ucdGridNodes = ucdGridNodes; + return this; + } + + public UCDInfo addUcdGridNodesItem(List> ucdGridNodesItem) { + if (this.ucdGridNodes == null) { + this.ucdGridNodes = new ArrayList<>(); + } + this.ucdGridNodes.add(ucdGridNodesItem); + return this; + } + + /** + * Get ucdGridNodes + * @return ucdGridNodes + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_UCD_GRID_NODES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List>> getUcdGridNodes() { + return ucdGridNodes; + } + + + @JsonProperty(JSON_PROPERTY_UCD_GRID_NODES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setUcdGridNodes(List>> ucdGridNodes) { + this.ucdGridNodes = ucdGridNodes; + } + + + public UCDInfo ucdMembraneQuads(List> ucdMembraneQuads) { + this.ucdMembraneQuads = ucdMembraneQuads; + return this; + } + + public UCDInfo addUcdMembraneQuadsItem(List ucdMembraneQuadsItem) { + if (this.ucdMembraneQuads == null) { + this.ucdMembraneQuads = new ArrayList<>(); + } + this.ucdMembraneQuads.add(ucdMembraneQuadsItem); + return this; + } + + /** + * Get ucdMembraneQuads + * @return ucdMembraneQuads + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_UCD_MEMBRANE_QUADS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List> getUcdMembraneQuads() { + return ucdMembraneQuads; + } + + + @JsonProperty(JSON_PROPERTY_UCD_MEMBRANE_QUADS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setUcdMembraneQuads(List> ucdMembraneQuads) { + this.ucdMembraneQuads = ucdMembraneQuads; + } + + + public UCDInfo reducedUCDGridNodesV(List reducedUCDGridNodesV) { + this.reducedUCDGridNodesV = reducedUCDGridNodesV; + return this; + } + + public UCDInfo addReducedUCDGridNodesVItem(Coordinate reducedUCDGridNodesVItem) { + if (this.reducedUCDGridNodesV == null) { + this.reducedUCDGridNodesV = new ArrayList<>(); + } + this.reducedUCDGridNodesV.add(reducedUCDGridNodesVItem); + return this; + } + + /** + * Get reducedUCDGridNodesV + * @return reducedUCDGridNodesV + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getReducedUCDGridNodesV() { + return reducedUCDGridNodesV; + } + + + @JsonProperty(JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReducedUCDGridNodesV(List reducedUCDGridNodesV) { + this.reducedUCDGridNodesV = reducedUCDGridNodesV; + } + + + public UCDInfo uCDGridNodes(List>> uCDGridNodes) { + this.uCDGridNodes = uCDGridNodes; + return this; + } + + public UCDInfo addUCDGridNodesItem(List> uCDGridNodesItem) { + if (this.uCDGridNodes == null) { + this.uCDGridNodes = new ArrayList<>(); + } + this.uCDGridNodes.add(uCDGridNodesItem); + return this; + } + + /** + * Get uCDGridNodes + * @return uCDGridNodes + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_U_C_D_GRID_NODES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List>> getuCDGridNodes() { + return uCDGridNodes; + } + + + @JsonProperty(JSON_PROPERTY_U_C_D_GRID_NODES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setuCDGridNodes(List>> uCDGridNodes) { + this.uCDGridNodes = uCDGridNodes; + } + + + public UCDInfo uCDMembraneQuads(List> uCDMembraneQuads) { + this.uCDMembraneQuads = uCDMembraneQuads; + return this; + } + + public UCDInfo addUCDMembraneQuadsItem(List uCDMembraneQuadsItem) { + if (this.uCDMembraneQuads == null) { + this.uCDMembraneQuads = new ArrayList<>(); + } + this.uCDMembraneQuads.add(uCDMembraneQuadsItem); + return this; + } + + /** + * Get uCDMembraneQuads + * @return uCDMembraneQuads + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_U_C_D_MEMBRANE_QUADS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List> getuCDMembraneQuads() { + return uCDMembraneQuads; + } + + + @JsonProperty(JSON_PROPERTY_U_C_D_MEMBRANE_QUADS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setuCDMembraneQuads(List> uCDMembraneQuads) { + this.uCDMembraneQuads = uCDMembraneQuads; + } + + + public UCDInfo numVolumeNodesX(Integer numVolumeNodesX) { + this.numVolumeNodesX = numVolumeNodesX; + return this; + } + + /** + * Get numVolumeNodesX + * @return numVolumeNodesX + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeNodesX() { + return numVolumeNodesX; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeNodesX(Integer numVolumeNodesX) { + this.numVolumeNodesX = numVolumeNodesX; + } + + + public UCDInfo numVolumeNodesY(Integer numVolumeNodesY) { + this.numVolumeNodesY = numVolumeNodesY; + return this; + } + + /** + * Get numVolumeNodesY + * @return numVolumeNodesY + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeNodesY() { + return numVolumeNodesY; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeNodesY(Integer numVolumeNodesY) { + this.numVolumeNodesY = numVolumeNodesY; + } + + + public UCDInfo numVolumeNodesZ(Integer numVolumeNodesZ) { + this.numVolumeNodesZ = numVolumeNodesZ; + return this; + } + + /** + * Get numVolumeNodesZ + * @return numVolumeNodesZ + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeNodesZ() { + return numVolumeNodesZ; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeNodesZ(Integer numVolumeNodesZ) { + this.numVolumeNodesZ = numVolumeNodesZ; + } + + + public UCDInfo numPointsXYZ(Integer numPointsXYZ) { + this.numPointsXYZ = numPointsXYZ; + return this; + } + + /** + * Get numPointsXYZ + * @return numPointsXYZ + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_POINTS_X_Y_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumPointsXYZ() { + return numPointsXYZ; + } + + + @JsonProperty(JSON_PROPERTY_NUM_POINTS_X_Y_Z) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumPointsXYZ(Integer numPointsXYZ) { + this.numPointsXYZ = numPointsXYZ; + } + + + public UCDInfo numVolumeNodesXY(Integer numVolumeNodesXY) { + this.numVolumeNodesXY = numVolumeNodesXY; + return this; + } + + /** + * Get numVolumeNodesXY + * @return numVolumeNodesXY + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeNodesXY() { + return numVolumeNodesXY; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X_Y) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeNodesXY(Integer numVolumeNodesXY) { + this.numVolumeNodesXY = numVolumeNodesXY; + } + + + public UCDInfo numVolumeCells(Integer numVolumeCells) { + this.numVolumeCells = numVolumeCells; + return this; + } + + /** + * Get numVolumeCells + * @return numVolumeCells + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_CELLS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumVolumeCells() { + return numVolumeCells; + } + + + @JsonProperty(JSON_PROPERTY_NUM_VOLUME_CELLS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumVolumeCells(Integer numVolumeCells) { + this.numVolumeCells = numVolumeCells; + } + + + public UCDInfo numMembraneCells(Integer numMembraneCells) { + this.numMembraneCells = numMembraneCells; + return this; + } + + /** + * Get numMembraneCells + * @return numMembraneCells + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_CELLS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getNumMembraneCells() { + return numMembraneCells; + } + + + @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_CELLS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNumMembraneCells(Integer numMembraneCells) { + this.numMembraneCells = numMembraneCells; + } + + + /** + * Return true if this UCDInfo object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + UCDInfo ucDInfo = (UCDInfo) o; + return Objects.equals(this.ucdGridNodes, ucDInfo.ucdGridNodes) && + Objects.equals(this.ucdMembraneQuads, ucDInfo.ucdMembraneQuads) && + Objects.equals(this.reducedUCDGridNodesV, ucDInfo.reducedUCDGridNodesV) && + Objects.equals(this.uCDGridNodes, ucDInfo.uCDGridNodes) && + Objects.equals(this.uCDMembraneQuads, ucDInfo.uCDMembraneQuads) && + Objects.equals(this.numVolumeNodesX, ucDInfo.numVolumeNodesX) && + Objects.equals(this.numVolumeNodesY, ucDInfo.numVolumeNodesY) && + Objects.equals(this.numVolumeNodesZ, ucDInfo.numVolumeNodesZ) && + Objects.equals(this.numPointsXYZ, ucDInfo.numPointsXYZ) && + Objects.equals(this.numVolumeNodesXY, ucDInfo.numVolumeNodesXY) && + Objects.equals(this.numVolumeCells, ucDInfo.numVolumeCells) && + Objects.equals(this.numMembraneCells, ucDInfo.numMembraneCells); + } + + @Override + public int hashCode() { + return Objects.hash(ucdGridNodes, ucdMembraneQuads, reducedUCDGridNodesV, uCDGridNodes, uCDMembraneQuads, numVolumeNodesX, numVolumeNodesY, numVolumeNodesZ, numPointsXYZ, numVolumeNodesXY, numVolumeCells, numMembraneCells); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class UCDInfo {\n"); + sb.append(" ucdGridNodes: ").append(toIndentedString(ucdGridNodes)).append("\n"); + sb.append(" ucdMembraneQuads: ").append(toIndentedString(ucdMembraneQuads)).append("\n"); + sb.append(" reducedUCDGridNodesV: ").append(toIndentedString(reducedUCDGridNodesV)).append("\n"); + sb.append(" uCDGridNodes: ").append(toIndentedString(uCDGridNodes)).append("\n"); + sb.append(" uCDMembraneQuads: ").append(toIndentedString(uCDMembraneQuads)).append("\n"); + sb.append(" numVolumeNodesX: ").append(toIndentedString(numVolumeNodesX)).append("\n"); + sb.append(" numVolumeNodesY: ").append(toIndentedString(numVolumeNodesY)).append("\n"); + sb.append(" numVolumeNodesZ: ").append(toIndentedString(numVolumeNodesZ)).append("\n"); + sb.append(" numPointsXYZ: ").append(toIndentedString(numPointsXYZ)).append("\n"); + sb.append(" numVolumeNodesXY: ").append(toIndentedString(numVolumeNodesXY)).append("\n"); + sb.append(" numVolumeCells: ").append(toIndentedString(numVolumeCells)).append("\n"); + sb.append(" numMembraneCells: ").append(toIndentedString(numMembraneCells)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `ucdGridNodes` to the URL query string + if (getUcdGridNodes() != null) { + for (int i = 0; i < getUcdGridNodes().size(); i++) { + if (getUcdGridNodes().get(i) != null) { + joiner.add(String.format("%sucdGridNodes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getUcdGridNodes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + } + + // add `ucdMembraneQuads` to the URL query string + if (getUcdMembraneQuads() != null) { + for (int i = 0; i < getUcdMembraneQuads().size(); i++) { + joiner.add(String.format("%sucdMembraneQuads%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getUcdMembraneQuads().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `reducedUCDGridNodesV` to the URL query string + if (getReducedUCDGridNodesV() != null) { + for (int i = 0; i < getReducedUCDGridNodesV().size(); i++) { + if (getReducedUCDGridNodesV().get(i) != null) { + joiner.add(getReducedUCDGridNodesV().get(i).toUrlQueryString(String.format("%sreducedUCDGridNodesV%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `uCDGridNodes` to the URL query string + if (getuCDGridNodes() != null) { + for (int i = 0; i < getuCDGridNodes().size(); i++) { + if (getuCDGridNodes().get(i) != null) { + joiner.add(String.format("%suCDGridNodes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getuCDGridNodes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + } + + // add `uCDMembraneQuads` to the URL query string + if (getuCDMembraneQuads() != null) { + for (int i = 0; i < getuCDMembraneQuads().size(); i++) { + joiner.add(String.format("%suCDMembraneQuads%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getuCDMembraneQuads().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `numVolumeNodesX` to the URL query string + if (getNumVolumeNodesX() != null) { + joiner.add(String.format("%snumVolumeNodesX%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeNodesY` to the URL query string + if (getNumVolumeNodesY() != null) { + joiner.add(String.format("%snumVolumeNodesY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeNodesZ` to the URL query string + if (getNumVolumeNodesZ() != null) { + joiner.add(String.format("%snumVolumeNodesZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numPointsXYZ` to the URL query string + if (getNumPointsXYZ() != null) { + joiner.add(String.format("%snumPointsXYZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumPointsXYZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeNodesXY` to the URL query string + if (getNumVolumeNodesXY() != null) { + joiner.add(String.format("%snumVolumeNodesXY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesXY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numVolumeCells` to the URL query string + if (getNumVolumeCells() != null) { + joiner.add(String.format("%snumVolumeCells%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeCells()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `numMembraneCells` to the URL query string + if (getNumMembraneCells() != null) { + joiner.add(String.format("%snumMembraneCells%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneCells()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableDomain.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableDomain.java new file mode 100644 index 0000000000..72f577c07e --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableDomain.java @@ -0,0 +1,88 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** + * Gets or Sets VariableDomain + */ +public enum VariableDomain { + + POSTPROCESSING("VARIABLEDOMAIN_POSTPROCESSING"), + + UNKNOWN("VARIABLEDOMAIN_UNKNOWN"), + + VOLUME("VARIABLEDOMAIN_VOLUME"), + + MEMBRANE("VARIABLEDOMAIN_MEMBRANE"), + + CONTOUR("VARIABLEDOMAIN_CONTOUR"), + + NONSPATIAL("VARIABLEDOMAIN_NONSPATIAL"), + + POINT("VARIABLEDOMAIN_POINT"); + + private String value; + + VariableDomain(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static VariableDomain fromValue(String value) { + for (VariableDomain b : VariableDomain.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } + +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableType.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableType.java new file mode 100644 index 0000000000..7b11b73d2a --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/VariableType.java @@ -0,0 +1,439 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.VariableDomain; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * VariableType + */ +@JsonPropertyOrder({ + VariableType.JSON_PROPERTY_TYPE, + VariableType.JSON_PROPERTY_VARIABLE_DOMAIN, + VariableType.JSON_PROPERTY_NAME, + VariableType.JSON_PROPERTY_UNITS, + VariableType.JSON_PROPERTY_LABEL, + VariableType.JSON_PROPERTY_LEGACY_WARN, + VariableType.JSON_PROPERTY_DEFAULT_LABEL, + VariableType.JSON_PROPERTY_DEFAULT_UNITS, + VariableType.JSON_PROPERTY_TYPE_NAME +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class VariableType { + public static final String JSON_PROPERTY_TYPE = "type"; + private Integer type; + + public static final String JSON_PROPERTY_VARIABLE_DOMAIN = "variableDomain"; + private VariableDomain variableDomain; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_UNITS = "units"; + private String units; + + public static final String JSON_PROPERTY_LABEL = "label"; + private String label; + + public static final String JSON_PROPERTY_LEGACY_WARN = "legacyWarn"; + private Boolean legacyWarn; + + public static final String JSON_PROPERTY_DEFAULT_LABEL = "defaultLabel"; + private String defaultLabel; + + public static final String JSON_PROPERTY_DEFAULT_UNITS = "defaultUnits"; + private String defaultUnits; + + public static final String JSON_PROPERTY_TYPE_NAME = "typeName"; + private String typeName; + + public VariableType() { + } + + public VariableType type(Integer type) { + this.type = type; + return this; + } + + /** + * Get type + * @return type + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getType() { + return type; + } + + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setType(Integer type) { + this.type = type; + } + + + public VariableType variableDomain(VariableDomain variableDomain) { + this.variableDomain = variableDomain; + return this; + } + + /** + * Get variableDomain + * @return variableDomain + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VARIABLE_DOMAIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VariableDomain getVariableDomain() { + return variableDomain; + } + + + @JsonProperty(JSON_PROPERTY_VARIABLE_DOMAIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVariableDomain(VariableDomain variableDomain) { + this.variableDomain = variableDomain; + } + + + public VariableType name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + public VariableType units(String units) { + this.units = units; + return this; + } + + /** + * Get units + * @return units + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_UNITS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getUnits() { + return units; + } + + + @JsonProperty(JSON_PROPERTY_UNITS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setUnits(String units) { + this.units = units; + } + + + public VariableType label(String label) { + this.label = label; + return this; + } + + /** + * Get label + * @return label + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_LABEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getLabel() { + return label; + } + + + @JsonProperty(JSON_PROPERTY_LABEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setLabel(String label) { + this.label = label; + } + + + public VariableType legacyWarn(Boolean legacyWarn) { + this.legacyWarn = legacyWarn; + return this; + } + + /** + * Get legacyWarn + * @return legacyWarn + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_LEGACY_WARN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getLegacyWarn() { + return legacyWarn; + } + + + @JsonProperty(JSON_PROPERTY_LEGACY_WARN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setLegacyWarn(Boolean legacyWarn) { + this.legacyWarn = legacyWarn; + } + + + public VariableType defaultLabel(String defaultLabel) { + this.defaultLabel = defaultLabel; + return this; + } + + /** + * Get defaultLabel + * @return defaultLabel + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEFAULT_LABEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getDefaultLabel() { + return defaultLabel; + } + + + @JsonProperty(JSON_PROPERTY_DEFAULT_LABEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDefaultLabel(String defaultLabel) { + this.defaultLabel = defaultLabel; + } + + + public VariableType defaultUnits(String defaultUnits) { + this.defaultUnits = defaultUnits; + return this; + } + + /** + * Get defaultUnits + * @return defaultUnits + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEFAULT_UNITS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getDefaultUnits() { + return defaultUnits; + } + + + @JsonProperty(JSON_PROPERTY_DEFAULT_UNITS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDefaultUnits(String defaultUnits) { + this.defaultUnits = defaultUnits; + } + + + public VariableType typeName(String typeName) { + this.typeName = typeName; + return this; + } + + /** + * Get typeName + * @return typeName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TYPE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getTypeName() { + return typeName; + } + + + @JsonProperty(JSON_PROPERTY_TYPE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + + /** + * Return true if this VariableType object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VariableType variableType = (VariableType) o; + return Objects.equals(this.type, variableType.type) && + Objects.equals(this.variableDomain, variableType.variableDomain) && + Objects.equals(this.name, variableType.name) && + Objects.equals(this.units, variableType.units) && + Objects.equals(this.label, variableType.label) && + Objects.equals(this.legacyWarn, variableType.legacyWarn) && + Objects.equals(this.defaultLabel, variableType.defaultLabel) && + Objects.equals(this.defaultUnits, variableType.defaultUnits) && + Objects.equals(this.typeName, variableType.typeName); + } + + @Override + public int hashCode() { + return Objects.hash(type, variableDomain, name, units, label, legacyWarn, defaultLabel, defaultUnits, typeName); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VariableType {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" variableDomain: ").append(toIndentedString(variableDomain)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" units: ").append(toIndentedString(units)).append("\n"); + sb.append(" label: ").append(toIndentedString(label)).append("\n"); + sb.append(" legacyWarn: ").append(toIndentedString(legacyWarn)).append("\n"); + sb.append(" defaultLabel: ").append(toIndentedString(defaultLabel)).append("\n"); + sb.append(" defaultUnits: ").append(toIndentedString(defaultUnits)).append("\n"); + sb.append(" typeName: ").append(toIndentedString(typeName)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add(String.format("%stype%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `variableDomain` to the URL query string + if (getVariableDomain() != null) { + joiner.add(String.format("%svariableDomain%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVariableDomain()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `units` to the URL query string + if (getUnits() != null) { + joiner.add(String.format("%sunits%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUnits()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `label` to the URL query string + if (getLabel() != null) { + joiner.add(String.format("%slabel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getLabel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `legacyWarn` to the URL query string + if (getLegacyWarn() != null) { + joiner.add(String.format("%slegacyWarn%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getLegacyWarn()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `defaultLabel` to the URL query string + if (getDefaultLabel() != null) { + joiner.add(String.format("%sdefaultLabel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDefaultLabel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `defaultUnits` to the URL query string + if (getDefaultUnits() != null) { + joiner.add(String.format("%sdefaultUnits%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDefaultUnits()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `typeName` to the URL query string + if (getTypeName() != null) { + joiner.add(String.format("%stypeName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTypeName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java new file mode 100644 index 0000000000..b52667afc5 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java @@ -0,0 +1,732 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.math.BigDecimal; +import java.time.LocalDate; +import java.util.Arrays; +import org.vcell.restclient.model.GroupAccess; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VersionFlag; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * Version + */ +@JsonPropertyOrder({ + Version.JSON_PROPERTY_VERSION_KEY, + Version.JSON_PROPERTY_VERSION_NAME, + Version.JSON_PROPERTY_VERSION_OWNER, + Version.JSON_PROPERTY_VERSION_GROUP_ACCESS, + Version.JSON_PROPERTY_VERSION_BRANCH_POINT_REF, + Version.JSON_PROPERTY_VERSION_BRANCH_I_D, + Version.JSON_PROPERTY_VERSION_DATE, + Version.JSON_PROPERTY_VERSION_FLAG, + Version.JSON_PROPERTY_VERSION_ANNOT, + Version.JSON_PROPERTY_ANNOT, + Version.JSON_PROPERTY_BRANCH_I_D, + Version.JSON_PROPERTY_BRANCH_POINT_REF_KEY, + Version.JSON_PROPERTY_DATE, + Version.JSON_PROPERTY_FLAG, + Version.JSON_PROPERTY_GROUP_ACCESS, + Version.JSON_PROPERTY_NAME, + Version.JSON_PROPERTY_OWNER +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class Version { + public static final String JSON_PROPERTY_VERSION_KEY = "versionKey"; + private KeyValue versionKey; + + public static final String JSON_PROPERTY_VERSION_NAME = "versionName"; + private String versionName; + + public static final String JSON_PROPERTY_VERSION_OWNER = "versionOwner"; + private User versionOwner; + + public static final String JSON_PROPERTY_VERSION_GROUP_ACCESS = "versionGroupAccess"; + private GroupAccess versionGroupAccess; + + public static final String JSON_PROPERTY_VERSION_BRANCH_POINT_REF = "versionBranchPointRef"; + private KeyValue versionBranchPointRef; + + public static final String JSON_PROPERTY_VERSION_BRANCH_I_D = "versionBranchID"; + private BigDecimal versionBranchID; + + public static final String JSON_PROPERTY_VERSION_DATE = "versionDate"; + private LocalDate versionDate; + + public static final String JSON_PROPERTY_VERSION_FLAG = "versionFlag"; + private VersionFlag versionFlag; + + public static final String JSON_PROPERTY_VERSION_ANNOT = "versionAnnot"; + private String versionAnnot; + + public static final String JSON_PROPERTY_ANNOT = "annot"; + private String annot; + + public static final String JSON_PROPERTY_BRANCH_I_D = "branchID"; + private BigDecimal branchID; + + public static final String JSON_PROPERTY_BRANCH_POINT_REF_KEY = "branchPointRefKey"; + private KeyValue branchPointRefKey; + + public static final String JSON_PROPERTY_DATE = "date"; + private LocalDate date; + + public static final String JSON_PROPERTY_FLAG = "flag"; + private VersionFlag flag; + + public static final String JSON_PROPERTY_GROUP_ACCESS = "groupAccess"; + private GroupAccess groupAccess; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_OWNER = "owner"; + private User owner; + + public Version() { + } + + public Version versionKey(KeyValue versionKey) { + this.versionKey = versionKey; + return this; + } + + /** + * Get versionKey + * @return versionKey + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getVersionKey() { + return versionKey; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionKey(KeyValue versionKey) { + this.versionKey = versionKey; + } + + + public Version versionName(String versionName) { + this.versionName = versionName; + return this; + } + + /** + * Get versionName + * @return versionName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getVersionName() { + return versionName; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionName(String versionName) { + this.versionName = versionName; + } + + + public Version versionOwner(User versionOwner) { + this.versionOwner = versionOwner; + return this; + } + + /** + * Get versionOwner + * @return versionOwner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getVersionOwner() { + return versionOwner; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionOwner(User versionOwner) { + this.versionOwner = versionOwner; + } + + + public Version versionGroupAccess(GroupAccess versionGroupAccess) { + this.versionGroupAccess = versionGroupAccess; + return this; + } + + /** + * Get versionGroupAccess + * @return versionGroupAccess + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_GROUP_ACCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public GroupAccess getVersionGroupAccess() { + return versionGroupAccess; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_GROUP_ACCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionGroupAccess(GroupAccess versionGroupAccess) { + this.versionGroupAccess = versionGroupAccess; + } + + + public Version versionBranchPointRef(KeyValue versionBranchPointRef) { + this.versionBranchPointRef = versionBranchPointRef; + return this; + } + + /** + * Get versionBranchPointRef + * @return versionBranchPointRef + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_POINT_REF) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getVersionBranchPointRef() { + return versionBranchPointRef; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_POINT_REF) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionBranchPointRef(KeyValue versionBranchPointRef) { + this.versionBranchPointRef = versionBranchPointRef; + } + + + public Version versionBranchID(BigDecimal versionBranchID) { + this.versionBranchID = versionBranchID; + return this; + } + + /** + * Get versionBranchID + * @return versionBranchID + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getVersionBranchID() { + return versionBranchID; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionBranchID(BigDecimal versionBranchID) { + this.versionBranchID = versionBranchID; + } + + + public Version versionDate(LocalDate versionDate) { + this.versionDate = versionDate; + return this; + } + + /** + * Get versionDate + * @return versionDate + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_DATE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public LocalDate getVersionDate() { + return versionDate; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_DATE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionDate(LocalDate versionDate) { + this.versionDate = versionDate; + } + + + public Version versionFlag(VersionFlag versionFlag) { + this.versionFlag = versionFlag; + return this; + } + + /** + * Get versionFlag + * @return versionFlag + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VersionFlag getVersionFlag() { + return versionFlag; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionFlag(VersionFlag versionFlag) { + this.versionFlag = versionFlag; + } + + + public Version versionAnnot(String versionAnnot) { + this.versionAnnot = versionAnnot; + return this; + } + + /** + * Get versionAnnot + * @return versionAnnot + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_ANNOT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getVersionAnnot() { + return versionAnnot; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_ANNOT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionAnnot(String versionAnnot) { + this.versionAnnot = versionAnnot; + } + + + public Version annot(String annot) { + this.annot = annot; + return this; + } + + /** + * Get annot + * @return annot + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ANNOT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getAnnot() { + return annot; + } + + + @JsonProperty(JSON_PROPERTY_ANNOT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAnnot(String annot) { + this.annot = annot; + } + + + public Version branchID(BigDecimal branchID) { + this.branchID = branchID; + return this; + } + + /** + * Get branchID + * @return branchID + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BRANCH_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBranchID() { + return branchID; + } + + + @JsonProperty(JSON_PROPERTY_BRANCH_I_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBranchID(BigDecimal branchID) { + this.branchID = branchID; + } + + + public Version branchPointRefKey(KeyValue branchPointRefKey) { + this.branchPointRefKey = branchPointRefKey; + return this; + } + + /** + * Get branchPointRefKey + * @return branchPointRefKey + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BRANCH_POINT_REF_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public KeyValue getBranchPointRefKey() { + return branchPointRefKey; + } + + + @JsonProperty(JSON_PROPERTY_BRANCH_POINT_REF_KEY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBranchPointRefKey(KeyValue branchPointRefKey) { + this.branchPointRefKey = branchPointRefKey; + } + + + public Version date(LocalDate date) { + this.date = date; + return this; + } + + /** + * Get date + * @return date + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public LocalDate getDate() { + return date; + } + + + @JsonProperty(JSON_PROPERTY_DATE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDate(LocalDate date) { + this.date = date; + } + + + public Version flag(VersionFlag flag) { + this.flag = flag; + return this; + } + + /** + * Get flag + * @return flag + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VersionFlag getFlag() { + return flag; + } + + + @JsonProperty(JSON_PROPERTY_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setFlag(VersionFlag flag) { + this.flag = flag; + } + + + public Version groupAccess(GroupAccess groupAccess) { + this.groupAccess = groupAccess; + return this; + } + + /** + * Get groupAccess + * @return groupAccess + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GROUP_ACCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public GroupAccess getGroupAccess() { + return groupAccess; + } + + + @JsonProperty(JSON_PROPERTY_GROUP_ACCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setGroupAccess(GroupAccess groupAccess) { + this.groupAccess = groupAccess; + } + + + public Version name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + public Version owner(User owner) { + this.owner = owner; + return this; + } + + /** + * Get owner + * @return owner + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public User getOwner() { + return owner; + } + + + @JsonProperty(JSON_PROPERTY_OWNER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOwner(User owner) { + this.owner = owner; + } + + + /** + * Return true if this Version object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Version version = (Version) o; + return Objects.equals(this.versionKey, version.versionKey) && + Objects.equals(this.versionName, version.versionName) && + Objects.equals(this.versionOwner, version.versionOwner) && + Objects.equals(this.versionGroupAccess, version.versionGroupAccess) && + Objects.equals(this.versionBranchPointRef, version.versionBranchPointRef) && + Objects.equals(this.versionBranchID, version.versionBranchID) && + Objects.equals(this.versionDate, version.versionDate) && + Objects.equals(this.versionFlag, version.versionFlag) && + Objects.equals(this.versionAnnot, version.versionAnnot) && + Objects.equals(this.annot, version.annot) && + Objects.equals(this.branchID, version.branchID) && + Objects.equals(this.branchPointRefKey, version.branchPointRefKey) && + Objects.equals(this.date, version.date) && + Objects.equals(this.flag, version.flag) && + Objects.equals(this.groupAccess, version.groupAccess) && + Objects.equals(this.name, version.name) && + Objects.equals(this.owner, version.owner); + } + + @Override + public int hashCode() { + return Objects.hash(versionKey, versionName, versionOwner, versionGroupAccess, versionBranchPointRef, versionBranchID, versionDate, versionFlag, versionAnnot, annot, branchID, branchPointRefKey, date, flag, groupAccess, name, owner); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Version {\n"); + sb.append(" versionKey: ").append(toIndentedString(versionKey)).append("\n"); + sb.append(" versionName: ").append(toIndentedString(versionName)).append("\n"); + sb.append(" versionOwner: ").append(toIndentedString(versionOwner)).append("\n"); + sb.append(" versionGroupAccess: ").append(toIndentedString(versionGroupAccess)).append("\n"); + sb.append(" versionBranchPointRef: ").append(toIndentedString(versionBranchPointRef)).append("\n"); + sb.append(" versionBranchID: ").append(toIndentedString(versionBranchID)).append("\n"); + sb.append(" versionDate: ").append(toIndentedString(versionDate)).append("\n"); + sb.append(" versionFlag: ").append(toIndentedString(versionFlag)).append("\n"); + sb.append(" versionAnnot: ").append(toIndentedString(versionAnnot)).append("\n"); + sb.append(" annot: ").append(toIndentedString(annot)).append("\n"); + sb.append(" branchID: ").append(toIndentedString(branchID)).append("\n"); + sb.append(" branchPointRefKey: ").append(toIndentedString(branchPointRefKey)).append("\n"); + sb.append(" date: ").append(toIndentedString(date)).append("\n"); + sb.append(" flag: ").append(toIndentedString(flag)).append("\n"); + sb.append(" groupAccess: ").append(toIndentedString(groupAccess)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `versionKey` to the URL query string + if (getVersionKey() != null) { + joiner.add(getVersionKey().toUrlQueryString(prefix + "versionKey" + suffix)); + } + + // add `versionName` to the URL query string + if (getVersionName() != null) { + joiner.add(String.format("%sversionName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `versionOwner` to the URL query string + if (getVersionOwner() != null) { + joiner.add(getVersionOwner().toUrlQueryString(prefix + "versionOwner" + suffix)); + } + + // add `versionGroupAccess` to the URL query string + if (getVersionGroupAccess() != null) { + joiner.add(getVersionGroupAccess().toUrlQueryString(prefix + "versionGroupAccess" + suffix)); + } + + // add `versionBranchPointRef` to the URL query string + if (getVersionBranchPointRef() != null) { + joiner.add(getVersionBranchPointRef().toUrlQueryString(prefix + "versionBranchPointRef" + suffix)); + } + + // add `versionBranchID` to the URL query string + if (getVersionBranchID() != null) { + joiner.add(String.format("%sversionBranchID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionBranchID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `versionDate` to the URL query string + if (getVersionDate() != null) { + joiner.add(String.format("%sversionDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `versionFlag` to the URL query string + if (getVersionFlag() != null) { + joiner.add(getVersionFlag().toUrlQueryString(prefix + "versionFlag" + suffix)); + } + + // add `versionAnnot` to the URL query string + if (getVersionAnnot() != null) { + joiner.add(String.format("%sversionAnnot%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionAnnot()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `annot` to the URL query string + if (getAnnot() != null) { + joiner.add(String.format("%sannot%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnot()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `branchID` to the URL query string + if (getBranchID() != null) { + joiner.add(String.format("%sbranchID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getBranchID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `branchPointRefKey` to the URL query string + if (getBranchPointRefKey() != null) { + joiner.add(getBranchPointRefKey().toUrlQueryString(prefix + "branchPointRefKey" + suffix)); + } + + // add `date` to the URL query string + if (getDate() != null) { + joiner.add(String.format("%sdate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `flag` to the URL query string + if (getFlag() != null) { + joiner.add(getFlag().toUrlQueryString(prefix + "flag" + suffix)); + } + + // add `groupAccess` to the URL query string + if (getGroupAccess() != null) { + joiner.add(getGroupAccess().toUrlQueryString(prefix + "groupAccess" + suffix)); + } + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `owner` to the URL query string + if (getOwner() != null) { + joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java new file mode 100644 index 0000000000..e5653c87b9 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java @@ -0,0 +1,294 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * VersionFlag + */ +@JsonPropertyOrder({ + VersionFlag.JSON_PROPERTY_VERSION_FLAG, + VersionFlag.JSON_PROPERTY_INT_VALUE, + VersionFlag.JSON_PROPERTY_ARCHIVED, + VersionFlag.JSON_PROPERTY_CURRENT, + VersionFlag.JSON_PROPERTY_PUBLISHED +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class VersionFlag { + public static final String JSON_PROPERTY_VERSION_FLAG = "versionFlag"; + private Integer versionFlag; + + public static final String JSON_PROPERTY_INT_VALUE = "intValue"; + private Integer intValue; + + public static final String JSON_PROPERTY_ARCHIVED = "archived"; + private Boolean archived; + + public static final String JSON_PROPERTY_CURRENT = "current"; + private Boolean current; + + public static final String JSON_PROPERTY_PUBLISHED = "published"; + private Boolean published; + + public VersionFlag() { + } + + public VersionFlag versionFlag(Integer versionFlag) { + this.versionFlag = versionFlag; + return this; + } + + /** + * Get versionFlag + * @return versionFlag + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getVersionFlag() { + return versionFlag; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_FLAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionFlag(Integer versionFlag) { + this.versionFlag = versionFlag; + } + + + public VersionFlag intValue(Integer intValue) { + this.intValue = intValue; + return this; + } + + /** + * Get intValue + * @return intValue + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_INT_VALUE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getIntValue() { + return intValue; + } + + + @JsonProperty(JSON_PROPERTY_INT_VALUE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIntValue(Integer intValue) { + this.intValue = intValue; + } + + + public VersionFlag archived(Boolean archived) { + this.archived = archived; + return this; + } + + /** + * Get archived + * @return archived + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ARCHIVED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getArchived() { + return archived; + } + + + @JsonProperty(JSON_PROPERTY_ARCHIVED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setArchived(Boolean archived) { + this.archived = archived; + } + + + public VersionFlag current(Boolean current) { + this.current = current; + return this; + } + + /** + * Get current + * @return current + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CURRENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getCurrent() { + return current; + } + + + @JsonProperty(JSON_PROPERTY_CURRENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCurrent(Boolean current) { + this.current = current; + } + + + public VersionFlag published(Boolean published) { + this.published = published; + return this; + } + + /** + * Get published + * @return published + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PUBLISHED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getPublished() { + return published; + } + + + @JsonProperty(JSON_PROPERTY_PUBLISHED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPublished(Boolean published) { + this.published = published; + } + + + /** + * Return true if this VersionFlag object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VersionFlag versionFlag = (VersionFlag) o; + return Objects.equals(this.versionFlag, versionFlag.versionFlag) && + Objects.equals(this.intValue, versionFlag.intValue) && + Objects.equals(this.archived, versionFlag.archived) && + Objects.equals(this.current, versionFlag.current) && + Objects.equals(this.published, versionFlag.published); + } + + @Override + public int hashCode() { + return Objects.hash(versionFlag, intValue, archived, current, published); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VersionFlag {\n"); + sb.append(" versionFlag: ").append(toIndentedString(versionFlag)).append("\n"); + sb.append(" intValue: ").append(toIndentedString(intValue)).append("\n"); + sb.append(" archived: ").append(toIndentedString(archived)).append("\n"); + sb.append(" current: ").append(toIndentedString(current)).append("\n"); + sb.append(" published: ").append(toIndentedString(published)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `versionFlag` to the URL query string + if (getVersionFlag() != null) { + joiner.add(String.format("%sversionFlag%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionFlag()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `intValue` to the URL query string + if (getIntValue() != null) { + joiner.add(String.format("%sintValue%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getIntValue()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `archived` to the URL query string + if (getArchived() != null) { + joiner.add(String.format("%sarchived%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getArchived()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `current` to the URL query string + if (getCurrent() != null) { + joiner.add(String.format("%scurrent%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCurrent()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `published` to the URL query string + if (getPublished() != null) { + joiner.add(String.format("%spublished%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getPublished()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java new file mode 100644 index 0000000000..076b8794b5 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java @@ -0,0 +1,402 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * VersionableType + */ +@JsonPropertyOrder({ + VersionableType.JSON_PROPERTY_V_TYPE, + VersionableType.JSON_PROPERTY_NAME, + VersionableType.JSON_PROPERTY_V_CLASS, + VersionableType.JSON_PROPERTY_B_TOP_LEVEL, + VersionableType.JSON_PROPERTY_CODE, + VersionableType.JSON_PROPERTY_IS_TOP_LEVEL, + VersionableType.JSON_PROPERTY_TYPE_NAME, + VersionableType.JSON_PROPERTY_VERSION_CLASS +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class VersionableType { + public static final String JSON_PROPERTY_V_TYPE = "vType"; + private Integer vType; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_V_CLASS = "vClass"; + private Object vClass; + + public static final String JSON_PROPERTY_B_TOP_LEVEL = "bTopLevel"; + private Boolean bTopLevel; + + public static final String JSON_PROPERTY_CODE = "code"; + private Integer code; + + public static final String JSON_PROPERTY_IS_TOP_LEVEL = "isTopLevel"; + private Boolean isTopLevel; + + public static final String JSON_PROPERTY_TYPE_NAME = "typeName"; + private String typeName; + + public static final String JSON_PROPERTY_VERSION_CLASS = "versionClass"; + private Object versionClass; + + public VersionableType() { + } + + public VersionableType vType(Integer vType) { + this.vType = vType; + return this; + } + + /** + * Get vType + * @return vType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_V_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getvType() { + return vType; + } + + + @JsonProperty(JSON_PROPERTY_V_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setvType(Integer vType) { + this.vType = vType; + } + + + public VersionableType name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + public VersionableType vClass(Object vClass) { + this.vClass = vClass; + return this; + } + + /** + * Get vClass + * @return vClass + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_V_CLASS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Object getvClass() { + return vClass; + } + + + @JsonProperty(JSON_PROPERTY_V_CLASS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setvClass(Object vClass) { + this.vClass = vClass; + } + + + public VersionableType bTopLevel(Boolean bTopLevel) { + this.bTopLevel = bTopLevel; + return this; + } + + /** + * Get bTopLevel + * @return bTopLevel + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_B_TOP_LEVEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getbTopLevel() { + return bTopLevel; + } + + + @JsonProperty(JSON_PROPERTY_B_TOP_LEVEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setbTopLevel(Boolean bTopLevel) { + this.bTopLevel = bTopLevel; + } + + + public VersionableType code(Integer code) { + this.code = code; + return this; + } + + /** + * Get code + * @return code + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getCode() { + return code; + } + + + @JsonProperty(JSON_PROPERTY_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCode(Integer code) { + this.code = code; + } + + + public VersionableType isTopLevel(Boolean isTopLevel) { + this.isTopLevel = isTopLevel; + return this; + } + + /** + * Get isTopLevel + * @return isTopLevel + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_TOP_LEVEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getIsTopLevel() { + return isTopLevel; + } + + + @JsonProperty(JSON_PROPERTY_IS_TOP_LEVEL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsTopLevel(Boolean isTopLevel) { + this.isTopLevel = isTopLevel; + } + + + public VersionableType typeName(String typeName) { + this.typeName = typeName; + return this; + } + + /** + * Get typeName + * @return typeName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TYPE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getTypeName() { + return typeName; + } + + + @JsonProperty(JSON_PROPERTY_TYPE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTypeName(String typeName) { + this.typeName = typeName; + } + + + public VersionableType versionClass(Object versionClass) { + this.versionClass = versionClass; + return this; + } + + /** + * Get versionClass + * @return versionClass + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION_CLASS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Object getVersionClass() { + return versionClass; + } + + + @JsonProperty(JSON_PROPERTY_VERSION_CLASS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersionClass(Object versionClass) { + this.versionClass = versionClass; + } + + + /** + * Return true if this VersionableType object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VersionableType versionableType = (VersionableType) o; + return Objects.equals(this.vType, versionableType.vType) && + Objects.equals(this.name, versionableType.name) && + Objects.equals(this.vClass, versionableType.vClass) && + Objects.equals(this.bTopLevel, versionableType.bTopLevel) && + Objects.equals(this.code, versionableType.code) && + Objects.equals(this.isTopLevel, versionableType.isTopLevel) && + Objects.equals(this.typeName, versionableType.typeName) && + Objects.equals(this.versionClass, versionableType.versionClass); + } + + @Override + public int hashCode() { + return Objects.hash(vType, name, vClass, bTopLevel, code, isTopLevel, typeName, versionClass); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VersionableType {\n"); + sb.append(" vType: ").append(toIndentedString(vType)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" vClass: ").append(toIndentedString(vClass)).append("\n"); + sb.append(" bTopLevel: ").append(toIndentedString(bTopLevel)).append("\n"); + sb.append(" code: ").append(toIndentedString(code)).append("\n"); + sb.append(" isTopLevel: ").append(toIndentedString(isTopLevel)).append("\n"); + sb.append(" typeName: ").append(toIndentedString(typeName)).append("\n"); + sb.append(" versionClass: ").append(toIndentedString(versionClass)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vType` to the URL query string + if (getvType() != null) { + joiner.add(String.format("%svType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getvType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `vClass` to the URL query string + if (getvClass() != null) { + joiner.add(String.format("%svClass%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getvClass()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `bTopLevel` to the URL query string + if (getbTopLevel() != null) { + joiner.add(String.format("%sbTopLevel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getbTopLevel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `code` to the URL query string + if (getCode() != null) { + joiner.add(String.format("%scode%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCode()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `isTopLevel` to the URL query string + if (getIsTopLevel() != null) { + joiner.add(String.format("%sisTopLevel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getIsTopLevel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `typeName` to the URL query string + if (getTypeName() != null) { + joiner.add(String.format("%stypeName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTypeName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `versionClass` to the URL query string + if (getVersionClass() != null) { + joiner.add(String.format("%sversionClass%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionClass()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java new file mode 100644 index 0000000000..1b2ddc921b --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java @@ -0,0 +1,188 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.Version; +import org.vcell.restclient.model.VersionableType; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * VersionableTypeVersion + */ +@JsonPropertyOrder({ + VersionableTypeVersion.JSON_PROPERTY_V_TYPE, + VersionableTypeVersion.JSON_PROPERTY_VERSION +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class VersionableTypeVersion { + public static final String JSON_PROPERTY_V_TYPE = "vType"; + private VersionableType vType; + + public static final String JSON_PROPERTY_VERSION = "version"; + private Version version; + + public VersionableTypeVersion() { + } + + public VersionableTypeVersion vType(VersionableType vType) { + this.vType = vType; + return this; + } + + /** + * Get vType + * @return vType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_V_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VersionableType getvType() { + return vType; + } + + + @JsonProperty(JSON_PROPERTY_V_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setvType(VersionableType vType) { + this.vType = vType; + } + + + public VersionableTypeVersion version(Version version) { + this.version = version; + return this; + } + + /** + * Get version + * @return version + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERSION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Version getVersion() { + return version; + } + + + @JsonProperty(JSON_PROPERTY_VERSION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVersion(Version version) { + this.version = version; + } + + + /** + * Return true if this VersionableTypeVersion object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VersionableTypeVersion versionableTypeVersion = (VersionableTypeVersion) o; + return Objects.equals(this.vType, versionableTypeVersion.vType) && + Objects.equals(this.version, versionableTypeVersion.version); + } + + @Override + public int hashCode() { + return Objects.hash(vType, version); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VersionableTypeVersion {\n"); + sb.append(" vType: ").append(toIndentedString(vType)).append("\n"); + sb.append(" version: ").append(toIndentedString(version)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vType` to the URL query string + if (getvType() != null) { + joiner.add(getvType().toUrlQueryString(prefix + "vType" + suffix)); + } + + // add `version` to the URL query string + if (getVersion() != null) { + joiner.add(getVersion().toUrlQueryString(prefix + "version" + suffix)); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java new file mode 100644 index 0000000000..3fc3df6777 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java @@ -0,0 +1,147 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.api; + +import org.vcell.restclient.ApiException; +import org.vcell.restclient.model.AnalyzedResultsFromFieldData; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.FieldDataDBOperationSpec; +import org.vcell.restclient.model.FieldDataExternalDataIDs; +import org.vcell.restclient.model.FieldDataFileOperationSpec; +import org.vcell.restclient.model.FieldDataNoCopyConflict; +import org.vcell.restclient.model.FieldDataSaveResults; +import java.io.File; +import org.junit.Test; +import org.junit.Ignore; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; + + +/** + * API tests for FieldDataResourceApi + */ +@Ignore +public class FieldDataResourceApiTest { + + private final FieldDataResourceApi api = new FieldDataResourceApi(); + + + /** + * Copy an existing field data entry. + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void copyFieldDataTest() throws ApiException { + FieldDataDBOperationSpec fieldDataDBOperationSpec = null; + FieldDataNoCopyConflict response = + api.copyFieldData(fieldDataDBOperationSpec); + + // TODO: test validations + } + + /** + * + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void createNewFieldDataFromFileAlreadyAnalyzedTest() throws ApiException { + AnalyzedResultsFromFieldData analyzedResultsFromFieldData = null; + FieldDataSaveResults response = + api.createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); + + // TODO: test validations + } + + /** + * Create new field data from a simulation. + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void createNewFieldDataFromSimulationTest() throws ApiException { + FieldDataDBOperationSpec fieldDataDBOperationSpec = null; + ExternalDataIdentifier response = + api.createNewFieldDataFromSimulation(fieldDataDBOperationSpec); + + // TODO: test validations + } + + /** + * Delete the selected field data. + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void deleteFieldDataTest() throws ApiException { + String body = null; + + api.deleteFieldData(body); + + // TODO: test validations + } + + /** + * + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void generateFieldDataEstimateTest() throws ApiException { + File _file = null; + String fileName = null; + FieldDataFileOperationSpec response = + api.generateFieldDataEstimate(_file, fileName); + + // TODO: test validations + } + + /** + * Get all of the field data for that user. + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void getAllFieldDataTest() throws ApiException { + FieldDataDBOperationSpec fieldDataDBOperationSpec = null; + FieldDataExternalDataIDs response = + api.getAllFieldData(fieldDataDBOperationSpec); + + // TODO: test validations + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java new file mode 100644 index 0000000000..c49ca2d07a --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java @@ -0,0 +1,109 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for AnalyzedResultsFromFieldData + */ +public class AnalyzedResultsFromFieldDataTest { + private final AnalyzedResultsFromFieldData model = new AnalyzedResultsFromFieldData(); + + /** + * Model tests for AnalyzedResultsFromFieldData + */ + @Test + public void testAnalyzedResultsFromFieldData() { + // TODO: test AnalyzedResultsFromFieldData + } + + /** + * Test the property 'shortSpecData' + */ + @Test + public void shortSpecDataTest() { + // TODO: test shortSpecData + } + + /** + * Test the property 'varNames' + */ + @Test + public void varNamesTest() { + // TODO: test varNames + } + + /** + * Test the property 'times' + */ + @Test + public void timesTest() { + // TODO: test times + } + + /** + * Test the property 'origin' + */ + @Test + public void originTest() { + // TODO: test origin + } + + /** + * Test the property 'extent' + */ + @Test + public void extentTest() { + // TODO: test extent + } + + /** + * Test the property 'isize' + */ + @Test + public void isizeTest() { + // TODO: test isize + } + + /** + * Test the property 'annotation' + */ + @Test + public void annotationTest() { + // TODO: test annotation + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java new file mode 100644 index 0000000000..bfea5c3459 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java @@ -0,0 +1,175 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.io.File; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.UCDInfo; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for CartesianMesh + */ +public class CartesianMeshTest { + private final CartesianMesh model = new CartesianMesh(); + + /** + * Model tests for CartesianMesh + */ + @Test + public void testCartesianMesh() { + // TODO: test CartesianMesh + } + + /** + * Test the property 'compressedBytes' + */ + @Test + public void compressedBytesTest() { + // TODO: test compressedBytes + } + + /** + * Test the property 'uCDInfo' + */ + @Test + public void uCDInfoTest() { + // TODO: test uCDInfo + } + + /** + * Test the property 'geometryDimension' + */ + @Test + public void geometryDimensionTest() { + // TODO: test geometryDimension + } + + /** + * Test the property 'volumeRegionMapSubvolume' + */ + @Test + public void volumeRegionMapSubvolumeTest() { + // TODO: test volumeRegionMapSubvolume + } + + /** + * Test the property 'membraneRegionMapSubvolumesInOut' + */ + @Test + public void membraneRegionMapSubvolumesInOutTest() { + // TODO: test membraneRegionMapSubvolumesInOut + } + + /** + * Test the property 'numMembraneElements' + */ + @Test + public void numMembraneElementsTest() { + // TODO: test numMembraneElements + } + + /** + * Test the property 'numMembraneRegions' + */ + @Test + public void numMembraneRegionsTest() { + // TODO: test numMembraneRegions + } + + /** + * Test the property 'numVolumeElements' + */ + @Test + public void numVolumeElementsTest() { + // TODO: test numVolumeElements + } + + /** + * Test the property 'numVolumeRegions' + */ + @Test + public void numVolumeRegionsTest() { + // TODO: test numVolumeRegions + } + + /** + * Test the property 'iSize' + */ + @Test + public void iSizeTest() { + // TODO: test iSize + } + + /** + * Test the property 'sizeX' + */ + @Test + public void sizeXTest() { + // TODO: test sizeX + } + + /** + * Test the property 'sizeY' + */ + @Test + public void sizeYTest() { + // TODO: test sizeY + } + + /** + * Test the property 'sizeZ' + */ + @Test + public void sizeZTest() { + // TODO: test sizeZ + } + + /** + * Test the property 'membraneConnectivityOK' + */ + @Test + public void membraneConnectivityOKTest() { + // TODO: test membraneConnectivityOK + } + + /** + * Test the property 'outputFields' + */ + @Test + public void outputFieldsTest() { + // TODO: test outputFields + } + + /** + * Test the property 'chomboMesh' + */ + @Test + public void chomboMeshTest() { + // TODO: test chomboMesh + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java new file mode 100644 index 0000000000..6bb06a0f4d --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java @@ -0,0 +1,64 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for Coordinate + */ +public class CoordinateTest { + private final Coordinate model = new Coordinate(); + + /** + * Model tests for Coordinate + */ + @Test + public void testCoordinate() { + // TODO: test Coordinate + } + + /** + * Test the property 'x' + */ + @Test + public void xTest() { + // TODO: test x + } + + /** + * Test the property 'y' + */ + @Test + public void yTest() { + // TODO: test y + } + + /** + * Test the property 'z' + */ + @Test + public void zTest() { + // TODO: test z + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/ExtentTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExtentTest.java new file mode 100644 index 0000000000..7b6bf37638 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExtentTest.java @@ -0,0 +1,64 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for Extent + */ +public class ExtentTest { + private final Extent model = new Extent(); + + /** + * Model tests for Extent + */ + @Test + public void testExtent() { + // TODO: test Extent + } + + /** + * Test the property 'x' + */ + @Test + public void xTest() { + // TODO: test x + } + + /** + * Test the property 'y' + */ + @Test + public void yTest() { + // TODO: test y + } + + /** + * Test the property 'z' + */ + @Test + public void zTest() { + // TODO: test z + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java new file mode 100644 index 0000000000..f949abeb0a --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java @@ -0,0 +1,106 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.User; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for ExternalDataIdentifier + */ +public class ExternalDataIdentifierTest { + private final ExternalDataIdentifier model = new ExternalDataIdentifier(); + + /** + * Model tests for ExternalDataIdentifier + */ + @Test + public void testExternalDataIdentifier() { + // TODO: test ExternalDataIdentifier + } + + /** + * Test the property 'key' + */ + @Test + public void keyTest() { + // TODO: test key + } + + /** + * Test the property 'owner' + */ + @Test + public void ownerTest() { + // TODO: test owner + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + + /** + * Test the property 'iD' + */ + @Test + public void iDTest() { + // TODO: test iD + } + + /** + * Test the property 'jobIndex' + */ + @Test + public void jobIndexTest() { + // TODO: test jobIndex + } + + /** + * Test the property 'simulationKey' + */ + @Test + public void simulationKeyTest() { + // TODO: test simulationKey + } + + /** + * Test the property 'parameterScanType' + */ + @Test + public void parameterScanTypeTest() { + // TODO: test parameterScanType + } + + /** + * Test the property 'dataKey' + */ + @Test + public void dataKeyTest() { + // TODO: test dataKey + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java new file mode 100644 index 0000000000..9372bce46b --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java @@ -0,0 +1,109 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VersionableTypeVersion; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataDBOperationSpec + */ +public class FieldDataDBOperationSpecTest { + private final FieldDataDBOperationSpec model = new FieldDataDBOperationSpec(); + + /** + * Model tests for FieldDataDBOperationSpec + */ + @Test + public void testFieldDataDBOperationSpec() { + // TODO: test FieldDataDBOperationSpec + } + + /** + * Test the property 'opType' + */ + @Test + public void opTypeTest() { + // TODO: test opType + } + + /** + * Test the property 'specEDI' + */ + @Test + public void specEDITest() { + // TODO: test specEDI + } + + /** + * Test the property 'owner' + */ + @Test + public void ownerTest() { + // TODO: test owner + } + + /** + * Test the property 'newExtDataIDName' + */ + @Test + public void newExtDataIDNameTest() { + // TODO: test newExtDataIDName + } + + /** + * Test the property 'annotation' + */ + @Test + public void annotationTest() { + // TODO: test annotation + } + + /** + * Test the property 'sourceNames' + */ + @Test + public void sourceNamesTest() { + // TODO: test sourceNames + } + + /** + * Test the property 'sourceOwner' + */ + @Test + public void sourceOwnerTest() { + // TODO: test sourceOwner + } + + /** + * Test the property 'bIncludeSimRefs' + */ + @Test + public void bIncludeSimRefsTest() { + // TODO: test bIncludeSimRefs + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java new file mode 100644 index 0000000000..8668e9b408 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java @@ -0,0 +1,70 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataExternalDataIDs + */ +public class FieldDataExternalDataIDsTest { + private final FieldDataExternalDataIDs model = new FieldDataExternalDataIDs(); + + /** + * Model tests for FieldDataExternalDataIDs + */ + @Test + public void testFieldDataExternalDataIDs() { + // TODO: test FieldDataExternalDataIDs + } + + /** + * Test the property 'externalDataIdentifiers' + */ + @Test + public void externalDataIdentifiersTest() { + // TODO: test externalDataIdentifiers + } + + /** + * Test the property 'externalDataAnnotations' + */ + @Test + public void externalDataAnnotationsTest() { + // TODO: test externalDataAnnotations + } + + /** + * Test the property 'externalDataIDSimRefs' + */ + @Test + public void externalDataIDSimRefsTest() { + // TODO: test externalDataIDSimRefs + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java new file mode 100644 index 0000000000..b1311fdcaf --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java @@ -0,0 +1,186 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.CartesianMesh; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.Origin; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VariableType; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataFileOperationSpec + */ +public class FieldDataFileOperationSpecTest { + private final FieldDataFileOperationSpec model = new FieldDataFileOperationSpec(); + + /** + * Model tests for FieldDataFileOperationSpec + */ + @Test + public void testFieldDataFileOperationSpec() { + // TODO: test FieldDataFileOperationSpec + } + + /** + * Test the property 'opType' + */ + @Test + public void opTypeTest() { + // TODO: test opType + } + + /** + * Test the property 'shortSpecData' + */ + @Test + public void shortSpecDataTest() { + // TODO: test shortSpecData + } + + /** + * Test the property 'doubleSpecData' + */ + @Test + public void doubleSpecDataTest() { + // TODO: test doubleSpecData + } + + /** + * Test the property 'cartesianMesh' + */ + @Test + public void cartesianMeshTest() { + // TODO: test cartesianMesh + } + + /** + * Test the property 'specEDI' + */ + @Test + public void specEDITest() { + // TODO: test specEDI + } + + /** + * Test the property 'varNames' + */ + @Test + public void varNamesTest() { + // TODO: test varNames + } + + /** + * Test the property 'variableTypes' + */ + @Test + public void variableTypesTest() { + // TODO: test variableTypes + } + + /** + * Test the property 'times' + */ + @Test + public void timesTest() { + // TODO: test times + } + + /** + * Test the property 'owner' + */ + @Test + public void ownerTest() { + // TODO: test owner + } + + /** + * Test the property 'origin' + */ + @Test + public void originTest() { + // TODO: test origin + } + + /** + * Test the property 'extent' + */ + @Test + public void extentTest() { + // TODO: test extent + } + + /** + * Test the property 'isize' + */ + @Test + public void isizeTest() { + // TODO: test isize + } + + /** + * Test the property 'annotation' + */ + @Test + public void annotationTest() { + // TODO: test annotation + } + + /** + * Test the property 'sourceSimParamScanJobIndex' + */ + @Test + public void sourceSimParamScanJobIndexTest() { + // TODO: test sourceSimParamScanJobIndex + } + + /** + * Test the property 'sourceSimDataKey' + */ + @Test + public void sourceSimDataKeyTest() { + // TODO: test sourceSimDataKey + } + + /** + * Test the property 'sourceOwner' + */ + @Test + public void sourceOwnerTest() { + // TODO: test sourceOwner + } + + /** + * Test the property 'fieldDataName' + */ + @Test + public void fieldDataNameTest() { + // TODO: test fieldDataName + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java new file mode 100644 index 0000000000..3e095e7881 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java @@ -0,0 +1,60 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataNoCopyConflict + */ +public class FieldDataNoCopyConflictTest { + private final FieldDataNoCopyConflict model = new FieldDataNoCopyConflict(); + + /** + * Model tests for FieldDataNoCopyConflict + */ + @Test + public void testFieldDataNoCopyConflict() { + // TODO: test FieldDataNoCopyConflict + } + + /** + * Test the property 'oldNameNewIDHash' + */ + @Test + public void oldNameNewIDHashTest() { + // TODO: test oldNameNewIDHash + } + + /** + * Test the property 'oldNameOldExtDataIDKeyHash' + */ + @Test + public void oldNameOldExtDataIDKeyHashTest() { + // TODO: test oldNameOldExtDataIDKeyHash + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java new file mode 100644 index 0000000000..d9b3a6c1cf --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java @@ -0,0 +1,56 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataSaveResults + */ +public class FieldDataSaveResultsTest { + private final FieldDataSaveResults model = new FieldDataSaveResults(); + + /** + * Model tests for FieldDataSaveResults + */ + @Test + public void testFieldDataSaveResults() { + // TODO: test FieldDataSaveResults + } + + /** + * Test the property 'fieldDataName' + */ + @Test + public void fieldDataNameTest() { + // TODO: test fieldDataName + } + + /** + * Test the property 'fieldDataID' + */ + @Test + public void fieldDataIDTest() { + // TODO: test fieldDataID + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java new file mode 100644 index 0000000000..48e86d6d02 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java @@ -0,0 +1,57 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.math.BigDecimal; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for GroupAccess + */ +public class GroupAccessTest { + private final GroupAccess model = new GroupAccess(); + + /** + * Model tests for GroupAccess + */ + @Test + public void testGroupAccess() { + // TODO: test GroupAccess + } + + /** + * Test the property 'groupid' + */ + @Test + public void groupidTest() { + // TODO: test groupid + } + + /** + * Test the property 'description' + */ + @Test + public void descriptionTest() { + // TODO: test description + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java new file mode 100644 index 0000000000..a9360e052c --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java @@ -0,0 +1,72 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for ISize + */ +public class ISizeTest { + private final ISize model = new ISize(); + + /** + * Model tests for ISize + */ + @Test + public void testISize() { + // TODO: test ISize + } + + /** + * Test the property 'x' + */ + @Test + public void xTest() { + // TODO: test x + } + + /** + * Test the property 'y' + */ + @Test + public void yTest() { + // TODO: test y + } + + /** + * Test the property 'z' + */ + @Test + public void zTest() { + // TODO: test z + } + + /** + * Test the property 'xYZ' + */ + @Test + public void xYZTest() { + // TODO: test xYZ + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/OriginTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/OriginTest.java new file mode 100644 index 0000000000..e46423d636 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/OriginTest.java @@ -0,0 +1,64 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for Origin + */ +public class OriginTest { + private final Origin model = new Origin(); + + /** + * Model tests for Origin + */ + @Test + public void testOrigin() { + // TODO: test Origin + } + + /** + * Test the property 'x' + */ + @Test + public void xTest() { + // TODO: test x + } + + /** + * Test the property 'y' + */ + @Test + public void yTest() { + // TODO: test y + } + + /** + * Test the property 'z' + */ + @Test + public void zTest() { + // TODO: test z + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java new file mode 100644 index 0000000000..28ee478e4a --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java @@ -0,0 +1,139 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.Coordinate; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for UCDInfo + */ +public class UCDInfoTest { + private final UCDInfo model = new UCDInfo(); + + /** + * Model tests for UCDInfo + */ + @Test + public void testUCDInfo() { + // TODO: test UCDInfo + } + + /** + * Test the property 'ucdGridNodes' + */ + @Test + public void ucdGridNodesTest() { + // TODO: test ucdGridNodes + } + + /** + * Test the property 'ucdMembraneQuads' + */ + @Test + public void ucdMembraneQuadsTest() { + // TODO: test ucdMembraneQuads + } + + /** + * Test the property 'reducedUCDGridNodesV' + */ + @Test + public void reducedUCDGridNodesVTest() { + // TODO: test reducedUCDGridNodesV + } + + /** + * Test the property 'uCDGridNodes' + */ + @Test + public void uCDGridNodesTest() { + // TODO: test uCDGridNodes + } + + /** + * Test the property 'uCDMembraneQuads' + */ + @Test + public void uCDMembraneQuadsTest() { + // TODO: test uCDMembraneQuads + } + + /** + * Test the property 'numVolumeNodesX' + */ + @Test + public void numVolumeNodesXTest() { + // TODO: test numVolumeNodesX + } + + /** + * Test the property 'numVolumeNodesY' + */ + @Test + public void numVolumeNodesYTest() { + // TODO: test numVolumeNodesY + } + + /** + * Test the property 'numVolumeNodesZ' + */ + @Test + public void numVolumeNodesZTest() { + // TODO: test numVolumeNodesZ + } + + /** + * Test the property 'numPointsXYZ' + */ + @Test + public void numPointsXYZTest() { + // TODO: test numPointsXYZ + } + + /** + * Test the property 'numVolumeNodesXY' + */ + @Test + public void numVolumeNodesXYTest() { + // TODO: test numVolumeNodesXY + } + + /** + * Test the property 'numVolumeCells' + */ + @Test + public void numVolumeCellsTest() { + // TODO: test numVolumeCells + } + + /** + * Test the property 'numMembraneCells' + */ + @Test + public void numMembraneCellsTest() { + // TODO: test numMembraneCells + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableDomainTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableDomainTest.java new file mode 100644 index 0000000000..76474ee9c4 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableDomainTest.java @@ -0,0 +1,32 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for VariableDomain + */ +public class VariableDomainTest { + /** + * Model tests for VariableDomain + */ + @Test + public void testVariableDomain() { + // TODO: test VariableDomain + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableTypeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableTypeTest.java new file mode 100644 index 0000000000..0b07442866 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VariableTypeTest.java @@ -0,0 +1,113 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.VariableDomain; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for VariableType + */ +public class VariableTypeTest { + private final VariableType model = new VariableType(); + + /** + * Model tests for VariableType + */ + @Test + public void testVariableType() { + // TODO: test VariableType + } + + /** + * Test the property 'type' + */ + @Test + public void typeTest() { + // TODO: test type + } + + /** + * Test the property 'variableDomain' + */ + @Test + public void variableDomainTest() { + // TODO: test variableDomain + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + + /** + * Test the property 'units' + */ + @Test + public void unitsTest() { + // TODO: test units + } + + /** + * Test the property 'label' + */ + @Test + public void labelTest() { + // TODO: test label + } + + /** + * Test the property 'legacyWarn' + */ + @Test + public void legacyWarnTest() { + // TODO: test legacyWarn + } + + /** + * Test the property 'defaultLabel' + */ + @Test + public void defaultLabelTest() { + // TODO: test defaultLabel + } + + /** + * Test the property 'defaultUnits' + */ + @Test + public void defaultUnitsTest() { + // TODO: test defaultUnits + } + + /** + * Test the property 'typeName' + */ + @Test + public void typeNameTest() { + // TODO: test typeName + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java new file mode 100644 index 0000000000..c75b3a179e --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java @@ -0,0 +1,80 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for VersionFlag + */ +public class VersionFlagTest { + private final VersionFlag model = new VersionFlag(); + + /** + * Model tests for VersionFlag + */ + @Test + public void testVersionFlag() { + // TODO: test VersionFlag + } + + /** + * Test the property 'versionFlag' + */ + @Test + public void versionFlagTest() { + // TODO: test versionFlag + } + + /** + * Test the property 'intValue' + */ + @Test + public void intValueTest() { + // TODO: test intValue + } + + /** + * Test the property 'archived' + */ + @Test + public void archivedTest() { + // TODO: test archived + } + + /** + * Test the property 'current' + */ + @Test + public void currentTest() { + // TODO: test current + } + + /** + * Test the property 'published' + */ + @Test + public void publishedTest() { + // TODO: test published + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java new file mode 100644 index 0000000000..bc83dcdd39 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java @@ -0,0 +1,182 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.math.BigDecimal; +import java.time.LocalDate; +import java.util.Arrays; +import org.vcell.restclient.model.GroupAccess; +import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.User; +import org.vcell.restclient.model.VersionFlag; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for Version + */ +public class VersionTest { + private final Version model = new Version(); + + /** + * Model tests for Version + */ + @Test + public void testVersion() { + // TODO: test Version + } + + /** + * Test the property 'versionKey' + */ + @Test + public void versionKeyTest() { + // TODO: test versionKey + } + + /** + * Test the property 'versionName' + */ + @Test + public void versionNameTest() { + // TODO: test versionName + } + + /** + * Test the property 'versionOwner' + */ + @Test + public void versionOwnerTest() { + // TODO: test versionOwner + } + + /** + * Test the property 'versionGroupAccess' + */ + @Test + public void versionGroupAccessTest() { + // TODO: test versionGroupAccess + } + + /** + * Test the property 'versionBranchPointRef' + */ + @Test + public void versionBranchPointRefTest() { + // TODO: test versionBranchPointRef + } + + /** + * Test the property 'versionBranchID' + */ + @Test + public void versionBranchIDTest() { + // TODO: test versionBranchID + } + + /** + * Test the property 'versionDate' + */ + @Test + public void versionDateTest() { + // TODO: test versionDate + } + + /** + * Test the property 'versionFlag' + */ + @Test + public void versionFlagTest() { + // TODO: test versionFlag + } + + /** + * Test the property 'versionAnnot' + */ + @Test + public void versionAnnotTest() { + // TODO: test versionAnnot + } + + /** + * Test the property 'annot' + */ + @Test + public void annotTest() { + // TODO: test annot + } + + /** + * Test the property 'branchID' + */ + @Test + public void branchIDTest() { + // TODO: test branchID + } + + /** + * Test the property 'branchPointRefKey' + */ + @Test + public void branchPointRefKeyTest() { + // TODO: test branchPointRefKey + } + + /** + * Test the property 'date' + */ + @Test + public void dateTest() { + // TODO: test date + } + + /** + * Test the property 'flag' + */ + @Test + public void flagTest() { + // TODO: test flag + } + + /** + * Test the property 'groupAccess' + */ + @Test + public void groupAccessTest() { + // TODO: test groupAccess + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + + /** + * Test the property 'owner' + */ + @Test + public void ownerTest() { + // TODO: test owner + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java new file mode 100644 index 0000000000..733af955ef --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java @@ -0,0 +1,104 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for VersionableType + */ +public class VersionableTypeTest { + private final VersionableType model = new VersionableType(); + + /** + * Model tests for VersionableType + */ + @Test + public void testVersionableType() { + // TODO: test VersionableType + } + + /** + * Test the property 'vType' + */ + @Test + public void vTypeTest() { + // TODO: test vType + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + + /** + * Test the property 'vClass' + */ + @Test + public void vClassTest() { + // TODO: test vClass + } + + /** + * Test the property 'bTopLevel' + */ + @Test + public void bTopLevelTest() { + // TODO: test bTopLevel + } + + /** + * Test the property 'code' + */ + @Test + public void codeTest() { + // TODO: test code + } + + /** + * Test the property 'isTopLevel' + */ + @Test + public void isTopLevelTest() { + // TODO: test isTopLevel + } + + /** + * Test the property 'typeName' + */ + @Test + public void typeNameTest() { + // TODO: test typeName + } + + /** + * Test the property 'versionClass' + */ + @Test + public void versionClassTest() { + // TODO: test versionClass + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java new file mode 100644 index 0000000000..05c8203fd5 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java @@ -0,0 +1,58 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.Version; +import org.vcell.restclient.model.VersionableType; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for VersionableTypeVersion + */ +public class VersionableTypeVersionTest { + private final VersionableTypeVersion model = new VersionableTypeVersion(); + + /** + * Model tests for VersionableTypeVersion + */ + @Test + public void testVersionableTypeVersion() { + // TODO: test VersionableTypeVersion + } + + /** + * Test the property 'vType' + */ + @Test + public void vTypeTest() { + // TODO: test vType + } + + /** + * Test the property 'version' + */ + @Test + public void versionTest() { + // TODO: test version + } + +} diff --git a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES index a833aa61ba..e1463b70d4 100644 --- a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES +++ b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES @@ -6,6 +6,8 @@ api/admin-resource.serviceInterface.ts api/api.ts api/bio-model-resource.service.ts api/bio-model-resource.serviceInterface.ts +api/field-data-resource.service.ts +api/field-data-resource.serviceInterface.ts api/hello-world.service.ts api/hello-world.serviceInterface.ts api/publication-resource.service.ts @@ -19,16 +21,29 @@ encoder.ts git_push.sh index.ts model/acces-token-representation-record.ts +model/analyzed-results-from-field-data.ts model/batch-system-type.ts model/bio-model.ts model/biomodel-ref.ts +model/cartesian-mesh.ts +model/coordinate.ts model/detailed-state.ts +model/extent.ts +model/external-data-identifier.ts +model/field-data-db-operation-spec.ts +model/field-data-external-data-ids.ts +model/field-data-file-operation-spec.ts +model/field-data-no-copy-conflict.ts +model/field-data-save-results.ts +model/group-access.ts model/hello-world-message.ts model/htc-job-id.ts +model/i-size.ts model/identity.ts model/key-value.ts model/mathmodel-ref.ts model/models.ts +model/origin.ts model/publication.ts model/scheduler-status.ts model/simulation-execution-status-record.ts @@ -39,10 +54,17 @@ model/simulation-queue-id.ts model/simulation-status-persistent-record.ts model/status-message.ts model/status.ts +model/ucd-info.ts model/user-identity-json-safe.ts model/user-login-info-for-mapping.ts model/user-registration-info.ts model/user.ts +model/variable-domain.ts +model/variable-type.ts model/vc-simulation-identifier.ts +model/version-flag.ts +model/version.ts +model/versionable-type-version.ts +model/versionable-type.ts param.ts variables.ts diff --git a/webapp-ng/src/app/core/modules/openapi/api/api.ts b/webapp-ng/src/app/core/modules/openapi/api/api.ts index 78b7eafdb0..342e9ee2f0 100644 --- a/webapp-ng/src/app/core/modules/openapi/api/api.ts +++ b/webapp-ng/src/app/core/modules/openapi/api/api.ts @@ -4,6 +4,9 @@ export * from './admin-resource.serviceInterface'; export * from './bio-model-resource.service'; import { BioModelResourceService } from './bio-model-resource.service'; export * from './bio-model-resource.serviceInterface'; +export * from './field-data-resource.service'; +import { FieldDataResourceService } from './field-data-resource.service'; +export * from './field-data-resource.serviceInterface'; export * from './hello-world.service'; import { HelloWorldService } from './hello-world.service'; export * from './hello-world.serviceInterface'; @@ -16,4 +19,4 @@ export * from './simulation-resource.serviceInterface'; export * from './users-resource.service'; import { UsersResourceService } from './users-resource.service'; export * from './users-resource.serviceInterface'; -export const APIS = [AdminResourceService, BioModelResourceService, HelloWorldService, PublicationResourceService, SimulationResourceService, UsersResourceService]; +export const APIS = [AdminResourceService, BioModelResourceService, FieldDataResourceService, HelloWorldService, PublicationResourceService, SimulationResourceService, UsersResourceService]; diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts new file mode 100644 index 0000000000..901da8fa6c --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts @@ -0,0 +1,526 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +/* tslint:disable:no-unused-variable member-ordering */ + +import { Inject, Injectable, Optional } from '@angular/core'; +import { HttpClient, HttpHeaders, HttpParams, + HttpResponse, HttpEvent, HttpParameterCodec, HttpContext + } from '@angular/common/http'; +import { CustomHttpParameterCodec } from '../encoder'; +import { Observable } from 'rxjs'; + +// @ts-ignore +import { AnalyzedResultsFromFieldData } from '../model/analyzed-results-from-field-data'; +// @ts-ignore +import { ExternalDataIdentifier } from '../model/external-data-identifier'; +// @ts-ignore +import { FieldDataDBOperationSpec } from '../model/field-data-db-operation-spec'; +// @ts-ignore +import { FieldDataExternalDataIDs } from '../model/field-data-external-data-ids'; +// @ts-ignore +import { FieldDataFileOperationSpec } from '../model/field-data-file-operation-spec'; +// @ts-ignore +import { FieldDataNoCopyConflict } from '../model/field-data-no-copy-conflict'; +// @ts-ignore +import { FieldDataSaveResults } from '../model/field-data-save-results'; + +// @ts-ignore +import { BASE_PATH, COLLECTION_FORMATS } from '../variables'; +import { Configuration } from '../configuration'; +import { + FieldDataResourceServiceInterface +} from './field-data-resource.serviceInterface'; + + + +@Injectable({ + providedIn: 'root' +}) +export class FieldDataResourceService implements FieldDataResourceServiceInterface { + + protected basePath = 'https://vcell-dev.cam.uchc.edu'; + public defaultHeaders = new HttpHeaders(); + public configuration = new Configuration(); + public encoder: HttpParameterCodec; + + constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) { + if (configuration) { + this.configuration = configuration; + } + if (typeof this.configuration.basePath !== 'string') { + if (Array.isArray(basePath) && basePath.length > 0) { + basePath = basePath[0]; + } + + if (typeof basePath !== 'string') { + basePath = this.basePath; + } + this.configuration.basePath = basePath; + } + this.encoder = this.configuration.encoder || new CustomHttpParameterCodec(); + } + + /** + * @param consumes string[] mime-types + * @return true: consumes contains 'multipart/form-data', false: otherwise + */ + private canConsumeForm(consumes: string[]): boolean { + const form = 'multipart/form-data'; + for (const consume of consumes) { + if (form === consume) { + return true; + } + } + return false; + } + + // @ts-ignore + private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams { + if (typeof value === "object" && value instanceof Date === false) { + httpParams = this.addToHttpParamsRecursive(httpParams, value); + } else { + httpParams = this.addToHttpParamsRecursive(httpParams, value, key); + } + return httpParams; + } + + private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams { + if (value == null) { + return httpParams; + } + + if (typeof value === "object") { + if (Array.isArray(value)) { + (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key)); + } else if (value instanceof Date) { + if (key != null) { + httpParams = httpParams.append(key, (value as Date).toISOString().substring(0, 10)); + } else { + throw Error("key may not be null if value is Date"); + } + } else { + Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive( + httpParams, value[k], key != null ? `${key}.${k}` : k)); + } + } else if (key != null) { + httpParams = httpParams.append(key, value); + } else { + throw Error("key may not be null if value is not object or array"); + } + return httpParams; + } + + /** + * Copy an existing field data entry. + * @param fieldDataDBOperationSpec + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + // to determine the Content-Type header + const consumes: string[] = [ + 'application/json' + ]; + const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); + if (httpContentTypeSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData/copy`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: fieldDataDBOperationSpec, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * @param analyzedResultsFromFieldData + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + // to determine the Content-Type header + const consumes: string[] = [ + 'application/json' + ]; + const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); + if (httpContentTypeSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: analyzedResultsFromFieldData, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * Create new field data from a simulation. + * @param fieldDataDBOperationSpec + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + // to determine the Content-Type header + const consumes: string[] = [ + 'application/json' + ]; + const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); + if (httpContentTypeSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData/createFieldDataFromSimulation`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: fieldDataDBOperationSpec, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * Delete the selected field data. + * @param body + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public deleteFieldData(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable; + public deleteFieldData(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; + public deleteFieldData(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; + public deleteFieldData(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + // to determine the Content-Type header + const consumes: string[] = [ + 'text/plain' + ]; + const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); + if (httpContentTypeSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData`; + return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: body, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * @param file + * @param fileName + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public generateFieldDataEstimate(file?: Blob, fileName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + // to determine the Content-Type header + const consumes: string[] = [ + 'multipart/form-data' + ]; + + const canConsumeForm = this.canConsumeForm(consumes); + + let localVarFormParams: { append(param: string, value: any): any; }; + let localVarUseForm = false; + let localVarConvertFormParamsToString = false; + // use FormData to transmit files using content-type "multipart/form-data" + // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data + localVarUseForm = canConsumeForm; + if (localVarUseForm) { + localVarFormParams = new FormData(); + } else { + localVarFormParams = new HttpParams({encoder: this.encoder}); + } + + if (file !== undefined) { + localVarFormParams = localVarFormParams.append('file', file) as any || localVarFormParams; + } + if (fileName !== undefined) { + localVarFormParams = localVarFormParams.append('fileName', fileName) as any || localVarFormParams; + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData/createFieldDataFromFile`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * Get all of the field data for that user. + * @param fieldDataDBOperationSpec + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + // to determine the Content-Type header + const consumes: string[] = [ + 'application/json' + ]; + const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); + if (httpContentTypeSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + } + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData`; + return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + body: fieldDataDBOperationSpec, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + +} diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts new file mode 100644 index 0000000000..b43e07663f --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts @@ -0,0 +1,76 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { HttpHeaders } from '@angular/common/http'; + +import { Observable } from 'rxjs'; + +import { AnalyzedResultsFromFieldData } from '../model/models'; +import { ExternalDataIdentifier } from '../model/models'; +import { FieldDataDBOperationSpec } from '../model/models'; +import { FieldDataExternalDataIDs } from '../model/models'; +import { FieldDataFileOperationSpec } from '../model/models'; +import { FieldDataNoCopyConflict } from '../model/models'; +import { FieldDataSaveResults } from '../model/models'; + + +import { Configuration } from '../configuration'; + + + +export interface FieldDataResourceServiceInterface { + defaultHeaders: HttpHeaders; + configuration: Configuration; + + /** + * Copy an existing field data entry. + * + * @param fieldDataDBOperationSpec + */ + copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + + /** + * + * + * @param analyzedResultsFromFieldData + */ + createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, extraHttpRequestParams?: any): Observable; + + /** + * Create new field data from a simulation. + * + * @param fieldDataDBOperationSpec + */ + createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + + /** + * Delete the selected field data. + * + * @param body + */ + deleteFieldData(body?: string, extraHttpRequestParams?: any): Observable<{}>; + + /** + * + * + * @param file + * @param fileName + */ + generateFieldDataEstimate(file?: Blob, fileName?: string, extraHttpRequestParams?: any): Observable; + + /** + * Get all of the field data for that user. + * + * @param fieldDataDBOperationSpec + */ + getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + +} diff --git a/webapp-ng/src/app/core/modules/openapi/model/analyzed-results-from-field-data.ts b/webapp-ng/src/app/core/modules/openapi/model/analyzed-results-from-field-data.ts new file mode 100644 index 0000000000..a4d70ab31a --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/analyzed-results-from-field-data.ts @@ -0,0 +1,27 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Origin } from './origin'; +import { Extent } from './extent'; +import { ISize } from './i-size'; + + +export interface AnalyzedResultsFromFieldData { + shortSpecData?: Array>>; + varNames?: Array; + times?: Array; + origin?: Origin; + extent?: Extent; + isize?: ISize; + annotation?: string; + name?: string; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts b/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts new file mode 100644 index 0000000000..243cf9642e --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts @@ -0,0 +1,34 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { UCDInfo } from './ucd-info'; +import { ISize } from './i-size'; + + +export interface CartesianMesh { + compressedBytes?: Blob; + uCDInfo?: UCDInfo; + geometryDimension?: number; + volumeRegionMapSubvolume?: { [key: string]: number; }; + membraneRegionMapSubvolumesInOut?: { [key: string]: any; }; + numMembraneElements?: number; + numMembraneRegions?: number; + numVolumeElements?: number; + numVolumeRegions?: number; + iSize?: ISize; + sizeX?: number; + sizeY?: number; + sizeZ?: number; + membraneConnectivityOK?: boolean; + outputFields?: Array; + chomboMesh?: boolean; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts b/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts new file mode 100644 index 0000000000..d91314ddc1 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts @@ -0,0 +1,19 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface Coordinate { + x?: number; + y?: number; + z?: number; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/extent.ts b/webapp-ng/src/app/core/modules/openapi/model/extent.ts new file mode 100644 index 0000000000..1864fed60b --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/extent.ts @@ -0,0 +1,19 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface Extent { + x?: number; + y?: number; + z?: number; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts b/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts new file mode 100644 index 0000000000..bef0813fee --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts @@ -0,0 +1,26 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; +import { User } from './user'; + + +export interface ExternalDataIdentifier { + key?: KeyValue; + owner?: User; + name?: string; + iD?: string; + jobIndex?: number; + simulationKey?: KeyValue; + parameterScanType?: boolean; + dataKey?: KeyValue; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts new file mode 100644 index 0000000000..19220adf5a --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts @@ -0,0 +1,27 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { User } from './user'; +import { VersionableTypeVersion } from './versionable-type-version'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataDBOperationSpec { + opType?: number; + specEDI?: ExternalDataIdentifier; + owner?: User; + newExtDataIDName?: string; + annotation?: string; + sourceNames?: Array; + sourceOwner?: VersionableTypeVersion; + bIncludeSimRefs?: boolean; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts new file mode 100644 index 0000000000..1947a69a7c --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts @@ -0,0 +1,21 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataExternalDataIDs { + externalDataIdentifiers?: Array; + externalDataAnnotations?: Array; + externalDataIDSimRefs?: { [key: string]: Array; }; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts new file mode 100644 index 0000000000..4269ff82b5 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts @@ -0,0 +1,41 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Origin } from './origin'; +import { CartesianMesh } from './cartesian-mesh'; +import { KeyValue } from './key-value'; +import { User } from './user'; +import { VariableType } from './variable-type'; +import { Extent } from './extent'; +import { ISize } from './i-size'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataFileOperationSpec { + opType?: number; + shortSpecData?: Array>>; + doubleSpecData?: Array>>; + cartesianMesh?: CartesianMesh; + specEDI?: ExternalDataIdentifier; + varNames?: Array; + variableTypes?: Array; + times?: Array; + owner?: User; + origin?: Origin; + extent?: Extent; + isize?: ISize; + annotation?: string; + sourceSimParamScanJobIndex?: number; + sourceSimDataKey?: KeyValue; + sourceOwner?: User; + fieldDataName?: string; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts new file mode 100644 index 0000000000..140220cb0f --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts @@ -0,0 +1,20 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataNoCopyConflict { + oldNameNewIDHash?: { [key: string]: ExternalDataIdentifier; }; + oldNameOldExtDataIDKeyHash?: { [key: string]: KeyValue; }; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-save-results.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-save-results.ts new file mode 100644 index 0000000000..1d19ff47e7 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-save-results.ts @@ -0,0 +1,18 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface FieldDataSaveResults { + fieldDataName?: string; + fieldDataID?: string; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/group-access.ts b/webapp-ng/src/app/core/modules/openapi/model/group-access.ts new file mode 100644 index 0000000000..d963010a25 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/group-access.ts @@ -0,0 +1,18 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface GroupAccess { + groupid?: number; + description?: string; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/i-size.ts b/webapp-ng/src/app/core/modules/openapi/model/i-size.ts new file mode 100644 index 0000000000..5a9e9f1481 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/i-size.ts @@ -0,0 +1,20 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface ISize { + x?: number; + y?: number; + z?: number; + xYZ?: number; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/models.ts b/webapp-ng/src/app/core/modules/openapi/model/models.ts index a0a82b95fe..72b948e2c2 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/models.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/models.ts @@ -1,13 +1,26 @@ export * from './acces-token-representation-record'; +export * from './analyzed-results-from-field-data'; export * from './batch-system-type'; export * from './bio-model'; export * from './biomodel-ref'; +export * from './cartesian-mesh'; +export * from './coordinate'; export * from './detailed-state'; +export * from './extent'; +export * from './external-data-identifier'; +export * from './field-data-db-operation-spec'; +export * from './field-data-external-data-ids'; +export * from './field-data-file-operation-spec'; +export * from './field-data-no-copy-conflict'; +export * from './field-data-save-results'; +export * from './group-access'; export * from './hello-world-message'; export * from './htc-job-id'; +export * from './i-size'; export * from './identity'; export * from './key-value'; export * from './mathmodel-ref'; +export * from './origin'; export * from './publication'; export * from './scheduler-status'; export * from './simulation-execution-status-record'; @@ -18,8 +31,15 @@ export * from './simulation-queue-id'; export * from './simulation-status-persistent-record'; export * from './status'; export * from './status-message'; +export * from './ucd-info'; export * from './user'; export * from './user-identity-json-safe'; export * from './user-login-info-for-mapping'; export * from './user-registration-info'; export * from './vc-simulation-identifier'; +export * from './variable-domain'; +export * from './variable-type'; +export * from './version'; +export * from './version-flag'; +export * from './versionable-type'; +export * from './versionable-type-version'; diff --git a/webapp-ng/src/app/core/modules/openapi/model/origin.ts b/webapp-ng/src/app/core/modules/openapi/model/origin.ts new file mode 100644 index 0000000000..0ec5468b44 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/origin.ts @@ -0,0 +1,19 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface Origin { + x?: number; + y?: number; + z?: number; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts b/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts new file mode 100644 index 0000000000..531b2fe777 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts @@ -0,0 +1,29 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Coordinate } from './coordinate'; + + +export interface UCDInfo { + ucdGridNodes?: Array>>; + ucdMembraneQuads?: Array>; + reducedUCDGridNodesV?: Array; + uCDGridNodes?: Array>>; + uCDMembraneQuads?: Array>; + numVolumeNodesX?: number; + numVolumeNodesY?: number; + numVolumeNodesZ?: number; + numPointsXYZ?: number; + numVolumeNodesXY?: number; + numVolumeCells?: number; + numMembraneCells?: number; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/variable-domain.ts b/webapp-ng/src/app/core/modules/openapi/model/variable-domain.ts new file mode 100644 index 0000000000..5893b2bc3e --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/variable-domain.ts @@ -0,0 +1,25 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export type VariableDomain = 'VARIABLEDOMAIN_POSTPROCESSING' | 'VARIABLEDOMAIN_UNKNOWN' | 'VARIABLEDOMAIN_VOLUME' | 'VARIABLEDOMAIN_MEMBRANE' | 'VARIABLEDOMAIN_CONTOUR' | 'VARIABLEDOMAIN_NONSPATIAL' | 'VARIABLEDOMAIN_POINT'; + +export const VariableDomain = { + Postprocessing: 'VARIABLEDOMAIN_POSTPROCESSING' as VariableDomain, + Unknown: 'VARIABLEDOMAIN_UNKNOWN' as VariableDomain, + Volume: 'VARIABLEDOMAIN_VOLUME' as VariableDomain, + Membrane: 'VARIABLEDOMAIN_MEMBRANE' as VariableDomain, + Contour: 'VARIABLEDOMAIN_CONTOUR' as VariableDomain, + Nonspatial: 'VARIABLEDOMAIN_NONSPATIAL' as VariableDomain, + Point: 'VARIABLEDOMAIN_POINT' as VariableDomain +}; + diff --git a/webapp-ng/src/app/core/modules/openapi/model/variable-type.ts b/webapp-ng/src/app/core/modules/openapi/model/variable-type.ts new file mode 100644 index 0000000000..7532cde48c --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/variable-type.ts @@ -0,0 +1,29 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { VariableDomain } from './variable-domain'; + + +export interface VariableType { + type?: number; + variableDomain?: VariableDomain; + name?: string; + units?: string; + label?: string; + legacyWarn?: boolean; + defaultLabel?: string; + defaultUnits?: string; + typeName?: string; +} +export namespace VariableType { +} + + diff --git a/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts b/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts new file mode 100644 index 0000000000..d5c92ad51b --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts @@ -0,0 +1,21 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface VersionFlag { + versionFlag?: number; + intValue?: number; + archived?: boolean; + current?: boolean; + published?: boolean; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/version.ts b/webapp-ng/src/app/core/modules/openapi/model/version.ts new file mode 100644 index 0000000000..6eff5f51b0 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/version.ts @@ -0,0 +1,37 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { VersionFlag } from './version-flag'; +import { KeyValue } from './key-value'; +import { User } from './user'; +import { GroupAccess } from './group-access'; + + +export interface Version { + versionKey?: KeyValue; + versionName?: string; + versionOwner?: User; + versionGroupAccess?: GroupAccess; + versionBranchPointRef?: KeyValue; + versionBranchID?: number; + versionDate?: string; + versionFlag?: VersionFlag; + versionAnnot?: string; + annot?: string; + branchID?: number; + branchPointRefKey?: KeyValue; + date?: string; + flag?: VersionFlag; + groupAccess?: GroupAccess; + name?: string; + owner?: User; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts b/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts new file mode 100644 index 0000000000..97dc69511a --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts @@ -0,0 +1,20 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Version } from './version'; +import { VersionableType } from './versionable-type'; + + +export interface VersionableTypeVersion { + vType?: VersionableType; + version?: Version; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts b/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts new file mode 100644 index 0000000000..6b03bb2b3e --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts @@ -0,0 +1,24 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface VersionableType { + vType?: number; + name?: string; + vClass?: object; + bTopLevel?: boolean; + code?: number; + isTopLevel?: boolean; + typeName?: string; + versionClass?: object; +} + From a2c8d7c2c1273ca44c0e548923379e8ab8b04cc5 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 20 Dec 2024 10:40:09 -0500 Subject: [PATCH 12/37] Add File Uploading Dependency --- vcell-restclient/pom.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/vcell-restclient/pom.xml b/vcell-restclient/pom.xml index 68cf6df3f1..dcb76e83e0 100644 --- a/vcell-restclient/pom.xml +++ b/vcell-restclient/pom.xml @@ -266,6 +266,14 @@ ${httpclient.version} compile + + + org.apache.httpcomponents + httpmime + ${httpclient.version} + compile + + From 7c90e6af33494e9224e6008ac29c234e065b1340 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 23 Dec 2024 08:39:29 -0500 Subject: [PATCH 13/37] Retrieve Field Data IDs and Shape Information With Rest Have the DB operation of retrieving all field data IDs of a user, and the shape information of a field data entry be done through the REST endpoints. --- python-restclient/.openapi-generator/FILES | 31 +- python-restclient/README.md | 10 +- python-restclient/docs/BioModelResourceApi.md | 2 +- python-restclient/docs/DataIdentifier.md | 34 + python-restclient/docs/Domain.md | 28 + .../docs/FieldDataFileOperationResults.md | 34 + python-restclient/docs/FieldDataInfo.md | 32 + .../docs/FieldDataReferenceInfo.md | 34 + python-restclient/docs/FieldDataReferences.md | 30 + .../docs/FieldDataResourceApi.md | 91 +- .../docs/SaveFieldDataFromFile.md | 35 + .../docs/SimulationResourceApi.md | 6 +- python-restclient/docs/UsersResourceApi.md | 12 +- .../test/test_data_identifier.py | 69 ++ python-restclient/test/test_domain.py | 53 + .../test_field_data_file_operation_results.py | 101 ++ .../test_field_data_file_operation_spec.py | 3 +- .../test/test_field_data_info.py | 68 ++ .../test/test_field_data_reference_info.py | 62 ++ .../test/test_field_data_references.py | 78 ++ .../test/test_field_data_resource_api.py | 10 +- .../test/test_save_field_data_from_file.py | 106 ++ python-restclient/vcell_client/__init__.py | 5 +- .../api/bio_model_resource_api.py | 12 +- .../api/field_data_resource_api.py | 310 +++++- .../api/simulation_resource_api.py | 36 +- .../vcell_client/api/users_resource_api.py | 48 +- .../vcell_client/models/__init__.py | 5 +- .../vcell_client/models/data_identifier.py | 114 +++ .../vcell_client/models/domain.py | 93 ++ .../field_data_file_operation_results.py | 138 +++ .../vcell_client/models/field_data_info.py | 122 +++ .../models/field_data_reference_info.py | 110 ++ .../models/field_data_references.py | 123 +++ .../models/save_field_data_from_file.py | 120 +++ tools/java-config.yaml | 2 + tools/openapi.yaml | 159 ++- .../field/FieldDataDBOperationResults.java | 24 +- .../vcell/field/FieldDataDBOperationSpec.java | 12 +- .../io/FieldDataFileOperationResults.java | 50 +- .../field/io/FieldDataFileOperationSpec.java | 2 +- .../main/java/cbit/vcell/math/Variable.java | 20 +- .../LocalDataSetControllerMessaging.java | 19 +- .../LocalUserMetaDbServerMessaging.java | 12 +- .../client/LocalVCellConnectionMessaging.java | 2 +- .../cbit/vcell/simdata/DataIdentifier.java | 11 +- .../restq/handlers/FieldData/FieldDataDB.java | 20 +- .../handlers/FieldData/FieldDataResource.java | 116 ++- vcell-restclient/.openapi-generator/FILES | 33 +- vcell-restclient/README.md | 15 +- vcell-restclient/api/openapi.yaml | 426 +++++--- vcell-restclient/docs/BioModelResourceApi.md | 4 +- vcell-restclient/docs/DataIdentifier.md | 19 + vcell-restclient/docs/Domain.md | 13 + vcell-restclient/docs/FieldDataInfo.md | 17 + vcell-restclient/docs/FieldDataReferences.md | 15 + vcell-restclient/docs/FieldDataResourceApi.md | 168 +++- .../docs/SimulationResourceApi.md | 12 +- vcell-restclient/docs/UsersResourceApi.md | 24 +- .../restclient/api/FieldDataResourceApi.java | 101 +- .../model/AccessTokenRepresentation.java | 294 ------ .../restclient/model/DataIdentifier.java | 368 +++++++ .../model/{Simulation.java => Domain.java} | 18 +- .../vcell/restclient/model/FieldDataInfo.java | 325 ++++++ .../restclient/model/FieldDataReferences.java | 265 +++++ .../restclient/model/IdentityProvider.java | 78 -- .../org/vcell/restclient/model/MapUser.java | 186 ---- .../model/OverrideRepresentation.java | 308 ------ .../model/SimulationExecutionStatus.java | 512 ---------- .../restclient/model/SimulationJobStatus.java | 949 ------------------ .../model/SimulationQueueEntryStatus.java | 329 ------ .../org/vcell/restclient/model/User1.java | 331 ------ .../vcell/restclient/model/UserIdentity.java | 260 ----- .../vcell/restclient/model/VCellServerID.java | 150 --- .../api/BioModelResourceApiTest.java | 85 -- .../api/FieldDataResourceApiTest.java | 11 +- .../restclient/api/HelloWorldApiTest.java | 12 +- .../api/PublicationResourceApiTest.java | 99 +- .../api/SimulationResourceApiTest.java | 27 +- .../restclient/api/UsersResourceApiTest.java | 174 +++- .../model/AccessTokenRepresentationTest.java | 80 -- .../vcell/restclient/model/BioModelTest.java | 14 +- .../restclient/model/BiomodelRefTest.java | 14 +- ...User1Test.java => DataIdentifierTest.java} | 59 +- .../{SimulationTest.java => DomainTest.java} | 12 +- ...tationTest.java => FieldDataInfoTest.java} | 47 +- ...Test.java => FieldDataReferencesTest.java} | 45 +- .../model/HelloWorldMessageTest.java | 13 +- .../model/IdentityProviderTest.java | 32 - .../vcell/restclient/model/MapUserTest.java | 56 -- .../restclient/model/MathmodelRefTest.java | 15 +- .../restclient/model/PublicationTest.java | 20 +- .../model/SimulationExecutionStatusTest.java | 130 --- .../model/SimulationJobStatusRecordTest.java | 6 +- .../model/SimulationJobStatusTest.java | 231 ----- .../model/SimulationQueueEntryStatusTest.java | 90 -- .../SimulationStatusPersistentRecordTest.java | 10 - .../restclient/model/StatusMessageTest.java | 2 +- .../model/UserIdentityJSONSafeTest.java | 8 + .../model/UserLoginInfoForMappingTest.java | 8 +- .../org/vcell/restclient/model/UserTest.java | 48 +- .../restclient/model/VCellServerIDTest.java | 48 - .../modules/openapi/.openapi-generator/FILES | 5 +- .../api/field-data-resource.service.ts | 80 +- .../field-data-resource.serviceInterface.ts | 15 +- .../modules/openapi/model/data-identifier.ts | 25 + .../app/core/modules/openapi/model/domain.ts | 17 + .../field-data-file-operation-results.ts | 29 + .../modules/openapi/model/field-data-info.ts | 25 + .../model/field-data-reference-info.ts | 24 + .../openapi/model/field-data-references.ts | 21 + .../app/core/modules/openapi/model/models.ts | 5 +- .../model/save-field-data-from-file.ts | 27 + 113 files changed, 4605 insertions(+), 4898 deletions(-) create mode 100644 python-restclient/docs/DataIdentifier.md create mode 100644 python-restclient/docs/Domain.md create mode 100644 python-restclient/docs/FieldDataFileOperationResults.md create mode 100644 python-restclient/docs/FieldDataInfo.md create mode 100644 python-restclient/docs/FieldDataReferenceInfo.md create mode 100644 python-restclient/docs/FieldDataReferences.md create mode 100644 python-restclient/docs/SaveFieldDataFromFile.md create mode 100644 python-restclient/test/test_data_identifier.py create mode 100644 python-restclient/test/test_domain.py create mode 100644 python-restclient/test/test_field_data_file_operation_results.py create mode 100644 python-restclient/test/test_field_data_info.py create mode 100644 python-restclient/test/test_field_data_reference_info.py create mode 100644 python-restclient/test/test_field_data_references.py create mode 100644 python-restclient/test/test_save_field_data_from_file.py create mode 100644 python-restclient/vcell_client/models/data_identifier.py create mode 100644 python-restclient/vcell_client/models/domain.py create mode 100644 python-restclient/vcell_client/models/field_data_file_operation_results.py create mode 100644 python-restclient/vcell_client/models/field_data_info.py create mode 100644 python-restclient/vcell_client/models/field_data_reference_info.py create mode 100644 python-restclient/vcell_client/models/field_data_references.py create mode 100644 python-restclient/vcell_client/models/save_field_data_from_file.py create mode 100644 vcell-restclient/docs/DataIdentifier.md create mode 100644 vcell-restclient/docs/Domain.md create mode 100644 vcell-restclient/docs/FieldDataInfo.md create mode 100644 vcell-restclient/docs/FieldDataReferences.md delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/AccessTokenRepresentation.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/DataIdentifier.java rename vcell-restclient/src/main/java/org/vcell/restclient/model/{Simulation.java => Domain.java} (90%) create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/IdentityProvider.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/MapUser.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/OverrideRepresentation.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationExecutionStatus.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationJobStatus.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationQueueEntryStatus.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/User1.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/UserIdentity.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VCellServerID.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/AccessTokenRepresentationTest.java rename vcell-restclient/src/test/java/org/vcell/restclient/model/{User1Test.java => DataIdentifierTest.java} (50%) rename vcell-restclient/src/test/java/org/vcell/restclient/model/{SimulationTest.java => DomainTest.java} (79%) rename vcell-restclient/src/test/java/org/vcell/restclient/model/{OverrideRepresentationTest.java => FieldDataInfoTest.java} (52%) rename vcell-restclient/src/test/java/org/vcell/restclient/model/{UserIdentityTest.java => FieldDataReferencesTest.java} (50%) delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/IdentityProviderTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/MapUserTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationExecutionStatusTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VCellServerIDTest.java create mode 100644 webapp-ng/src/app/core/modules/openapi/model/data-identifier.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/domain.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts diff --git a/python-restclient/.openapi-generator/FILES b/python-restclient/.openapi-generator/FILES index 0aec7584ab..e23e849145 100644 --- a/python-restclient/.openapi-generator/FILES +++ b/python-restclient/.openapi-generator/FILES @@ -10,13 +10,16 @@ docs/BioModelResourceApi.md docs/BiomodelRef.md docs/CartesianMesh.md docs/Coordinate.md +docs/DataIdentifier.md docs/DetailedState.md +docs/Domain.md docs/Extent.md docs/ExternalDataIdentifier.md docs/FieldDataDBOperationSpec.md -docs/FieldDataExternalDataIDs.md docs/FieldDataFileOperationSpec.md +docs/FieldDataInfo.md docs/FieldDataNoCopyConflict.md +docs/FieldDataReferences.md docs/FieldDataResourceApi.md docs/FieldDataSaveResults.md docs/GroupAccess.md @@ -55,27 +58,6 @@ docs/VersionableType.md docs/VersionableTypeVersion.md pyproject.toml test/__init__.py -test/test_analyzed_results_from_field_data.py -test/test_cartesian_mesh.py -test/test_coordinate.py -test/test_extent.py -test/test_external_data_identifier.py -test/test_field_data_db_operation_spec.py -test/test_field_data_external_data_ids.py -test/test_field_data_file_operation_spec.py -test/test_field_data_no_copy_conflict.py -test/test_field_data_resource_api.py -test/test_field_data_save_results.py -test/test_group_access.py -test/test_i_size.py -test/test_origin.py -test/test_ucd_info.py -test/test_variable_domain.py -test/test_variable_type.py -test/test_version.py -test/test_version_flag.py -test/test_versionable_type.py -test/test_versionable_type_version.py tox.ini vcell_client/__init__.py vcell_client/api/__init__.py @@ -98,13 +80,16 @@ vcell_client/models/bio_model.py vcell_client/models/biomodel_ref.py vcell_client/models/cartesian_mesh.py vcell_client/models/coordinate.py +vcell_client/models/data_identifier.py vcell_client/models/detailed_state.py +vcell_client/models/domain.py vcell_client/models/extent.py vcell_client/models/external_data_identifier.py vcell_client/models/field_data_db_operation_spec.py -vcell_client/models/field_data_external_data_ids.py vcell_client/models/field_data_file_operation_spec.py +vcell_client/models/field_data_info.py vcell_client/models/field_data_no_copy_conflict.py +vcell_client/models/field_data_references.py vcell_client/models/field_data_save_results.py vcell_client/models/group_access.py vcell_client/models/hello_world_message.py diff --git a/python-restclient/README.md b/python-restclient/README.md index 26963e5ea1..1c20a5588d 100644 --- a/python-restclient/README.md +++ b/python-restclient/README.md @@ -93,8 +93,9 @@ Class | Method | HTTP request | Description *FieldDataResourceApi* | [**create_new_field_data_from_file_already_analyzed**](docs/FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | *FieldDataResourceApi* | [**create_new_field_data_from_simulation**](docs/FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. *FieldDataResourceApi* | [**delete_field_data**](docs/FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. -*FieldDataResourceApi* | [**generate_field_data_estimate**](docs/FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | -*FieldDataResourceApi* | [**get_all_field_data**](docs/FieldDataResourceApi.md#get_all_field_data) | **GET** /api/v1/fieldData | Get all of the field data for that user. +*FieldDataResourceApi* | [**generate_field_data_estimate**](docs/FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +*FieldDataResourceApi* | [**get_all_field_data_ids**](docs/FieldDataResourceApi.md#get_all_field_data_ids) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. +*FieldDataResourceApi* | [**get_field_data_from_id**](docs/FieldDataResourceApi.md#get_field_data_from_id) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. *HelloWorldApi* | [**get_hello_world**](docs/HelloWorldApi.md#get_hello_world) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**create_publication**](docs/PublicationResourceApi.md#create_publication) | **POST** /api/v1/publications | Create publication *PublicationResourceApi* | [**delete_publication**](docs/PublicationResourceApi.md#delete_publication) | **DELETE** /api/v1/publications/{id} | Delete publication @@ -125,13 +126,16 @@ Class | Method | HTTP request | Description - [BiomodelRef](docs/BiomodelRef.md) - [CartesianMesh](docs/CartesianMesh.md) - [Coordinate](docs/Coordinate.md) + - [DataIdentifier](docs/DataIdentifier.md) - [DetailedState](docs/DetailedState.md) + - [Domain](docs/Domain.md) - [Extent](docs/Extent.md) - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) - - [FieldDataExternalDataIDs](docs/FieldDataExternalDataIDs.md) - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) + - [FieldDataInfo](docs/FieldDataInfo.md) - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) + - [FieldDataReferences](docs/FieldDataReferences.md) - [FieldDataSaveResults](docs/FieldDataSaveResults.md) - [GroupAccess](docs/GroupAccess.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) diff --git a/python-restclient/docs/BioModelResourceApi.md b/python-restclient/docs/BioModelResourceApi.md index 7fb0b2e4b9..3e3f9a9ee9 100644 --- a/python-restclient/docs/BioModelResourceApi.md +++ b/python-restclient/docs/BioModelResourceApi.md @@ -202,8 +202,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/DataIdentifier.md b/python-restclient/docs/DataIdentifier.md new file mode 100644 index 0000000000..703055bd97 --- /dev/null +++ b/python-restclient/docs/DataIdentifier.md @@ -0,0 +1,34 @@ +# DataIdentifier + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **str** | | [optional] +**display_name** | **str** | | [optional] +**variable_type** | [**VariableType**](VariableType.md) | | [optional] +**domain** | [**Domain**](Domain.md) | | [optional] +**b_function** | **bool** | | [optional] +**function** | **bool** | | [optional] +**visible** | **bool** | | [optional] + +## Example + +```python +from vcell_client.models.data_identifier import DataIdentifier + +# TODO update the JSON string below +json = "{}" +# create an instance of DataIdentifier from a JSON string +data_identifier_instance = DataIdentifier.from_json(json) +# print the JSON string representation of the object +print DataIdentifier.to_json() + +# convert the object into a dict +data_identifier_dict = data_identifier_instance.to_dict() +# create an instance of DataIdentifier from a dict +data_identifier_form_dict = data_identifier.from_dict(data_identifier_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/Domain.md b/python-restclient/docs/Domain.md new file mode 100644 index 0000000000..ddcfffc546 --- /dev/null +++ b/python-restclient/docs/Domain.md @@ -0,0 +1,28 @@ +# Domain + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.domain import Domain + +# TODO update the JSON string below +json = "{}" +# create an instance of Domain from a JSON string +domain_instance = Domain.from_json(json) +# print the JSON string representation of the object +print Domain.to_json() + +# convert the object into a dict +domain_dict = domain_instance.to_dict() +# create an instance of Domain from a dict +domain_form_dict = domain.from_dict(domain_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataFileOperationResults.md b/python-restclient/docs/FieldDataFileOperationResults.md new file mode 100644 index 0000000000..52799c6fe2 --- /dev/null +++ b/python-restclient/docs/FieldDataFileOperationResults.md @@ -0,0 +1,34 @@ +# FieldDataFileOperationResults + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**data_identifier_arr** | [**List[DataIdentifier]**](DataIdentifier.md) | | [optional] +**external_data_identifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] +**i_size** | [**ISize**](ISize.md) | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**extent** | [**Extent**](Extent.md) | | [optional] +**times** | **List[float]** | | [optional] +**dependant_function_info** | [**List[FieldDataReferenceInfo]**](FieldDataReferenceInfo.md) | | [optional] + +## Example + +```python +from vcell_client.models.field_data_file_operation_results import FieldDataFileOperationResults + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataFileOperationResults from a JSON string +field_data_file_operation_results_instance = FieldDataFileOperationResults.from_json(json) +# print the JSON string representation of the object +print FieldDataFileOperationResults.to_json() + +# convert the object into a dict +field_data_file_operation_results_dict = field_data_file_operation_results_instance.to_dict() +# create an instance of FieldDataFileOperationResults from a dict +field_data_file_operation_results_form_dict = field_data_file_operation_results.from_dict(field_data_file_operation_results_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataInfo.md b/python-restclient/docs/FieldDataInfo.md new file mode 100644 index 0000000000..8f30ce2a0b --- /dev/null +++ b/python-restclient/docs/FieldDataInfo.md @@ -0,0 +1,32 @@ +# FieldDataInfo + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**extent** | [**Extent**](Extent.md) | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**isize** | [**ISize**](ISize.md) | | [optional] +**data_identifier** | [**List[DataIdentifier]**](DataIdentifier.md) | | [optional] +**times** | **List[float]** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_info import FieldDataInfo + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataInfo from a JSON string +field_data_info_instance = FieldDataInfo.from_json(json) +# print the JSON string representation of the object +print FieldDataInfo.to_json() + +# convert the object into a dict +field_data_info_dict = field_data_info_instance.to_dict() +# create an instance of FieldDataInfo from a dict +field_data_info_form_dict = field_data_info.from_dict(field_data_info_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataReferenceInfo.md b/python-restclient/docs/FieldDataReferenceInfo.md new file mode 100644 index 0000000000..1cd60a9042 --- /dev/null +++ b/python-restclient/docs/FieldDataReferenceInfo.md @@ -0,0 +1,34 @@ +# FieldDataReferenceInfo + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**reference_source_type** | **str** | | [optional] +**reference_source_name** | **str** | | [optional] +**application_name** | **str** | | [optional] +**simulation_name** | **str** | | [optional] +**ref_source_version_date** | **str** | | [optional] +**func_names** | **List[str]** | | [optional] +**ref_source_version_key** | [**KeyValue**](KeyValue.md) | | [optional] + +## Example + +```python +from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataReferenceInfo from a JSON string +field_data_reference_info_instance = FieldDataReferenceInfo.from_json(json) +# print the JSON string representation of the object +print FieldDataReferenceInfo.to_json() + +# convert the object into a dict +field_data_reference_info_dict = field_data_reference_info_instance.to_dict() +# create an instance of FieldDataReferenceInfo from a dict +field_data_reference_info_form_dict = field_data_reference_info.from_dict(field_data_reference_info_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataReferences.md b/python-restclient/docs/FieldDataReferences.md new file mode 100644 index 0000000000..4d540b6cb4 --- /dev/null +++ b/python-restclient/docs/FieldDataReferences.md @@ -0,0 +1,30 @@ +# FieldDataReferences + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**external_data_identifiers** | [**List[ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] +**external_data_annotations** | **List[str]** | | [optional] +**external_data_id_sim_refs** | **Dict[str, List[KeyValue]]** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_references import FieldDataReferences + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataReferences from a JSON string +field_data_references_instance = FieldDataReferences.from_json(json) +# print the JSON string representation of the object +print FieldDataReferences.to_json() + +# convert the object into a dict +field_data_references_dict = field_data_references_instance.to_dict() +# create an instance of FieldDataReferences from a dict +field_data_references_form_dict = field_data_references.from_dict(field_data_references_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataResourceApi.md b/python-restclient/docs/FieldDataResourceApi.md index 4b49358464..6f6c8fbc14 100644 --- a/python-restclient/docs/FieldDataResourceApi.md +++ b/python-restclient/docs/FieldDataResourceApi.md @@ -8,8 +8,9 @@ Method | HTTP request | Description [**create_new_field_data_from_file_already_analyzed**](FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | [**create_new_field_data_from_simulation**](FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. [**delete_field_data**](FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. -[**generate_field_data_estimate**](FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | -[**get_all_field_data**](FieldDataResourceApi.md#get_all_field_data) | **GET** /api/v1/fieldData | Get all of the field data for that user. +[**generate_field_data_estimate**](FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +[**get_all_field_data_ids**](FieldDataResourceApi.md#get_all_field_data_ids) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. +[**get_field_data_from_id**](FieldDataResourceApi.md#get_field_data_from_id) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. # **copy_field_data** @@ -337,10 +338,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_all_field_data** -> FieldDataExternalDataIDs get_all_field_data(field_data_db_operation_spec=field_data_db_operation_spec) +# **get_all_field_data_ids** +> FieldDataReferences get_all_field_data_ids() -Get all of the field data for that user. +Get all of the ids used to identify, and retrieve field data. ### Example @@ -348,8 +349,7 @@ Get all of the field data for that user. import time import os import vcell_client -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs +from vcell_client.models.field_data_references import FieldDataReferences from vcell_client.rest import ApiException from pprint import pprint @@ -364,15 +364,76 @@ configuration = vcell_client.Configuration( with vcell_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = vcell_client.FieldDataResourceApi(api_client) - field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) try: - # Get all of the field data for that user. - api_response = api_instance.get_all_field_data(field_data_db_operation_spec=field_data_db_operation_spec) - print("The response of FieldDataResourceApi->get_all_field_data:\n") + # Get all of the ids used to identify, and retrieve field data. + api_response = api_instance.get_all_field_data_ids() + print("The response of FieldDataResourceApi->get_all_field_data_ids:\n") pprint(api_response) except Exception as e: - print("Exception when calling FieldDataResourceApi->get_all_field_data: %s\n" % e) + print("Exception when calling FieldDataResourceApi->get_all_field_data_ids: %s\n" % e) +``` + + + +### Parameters +This endpoint does not need any parameter. + +### Return type + +[**FieldDataReferences**](FieldDataReferences.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_field_data_from_id** +> FieldDataInfo get_field_data_from_id(body=body) + +Get the field data from the selected field data ID. + +### Example + +```python +import time +import os +import vcell_client +from vcell_client.models.field_data_info import FieldDataInfo +from vcell_client.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu +# See configuration.py for a list of all supported configuration parameters. +configuration = vcell_client.Configuration( + host = "https://vcell-dev.cam.uchc.edu" +) + + +# Enter a context with an instance of the API client +with vcell_client.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = vcell_client.FieldDataResourceApi(api_client) + body = 'body_example' # str | (optional) + + try: + # Get the field data from the selected field data ID. + api_response = api_instance.get_field_data_from_id(body=body) + print("The response of FieldDataResourceApi->get_field_data_from_id:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FieldDataResourceApi->get_field_data_from_id: %s\n" % e) ``` @@ -381,11 +442,11 @@ with vcell_client.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] + **body** | **str**| | [optional] ### Return type -[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md) +[**FieldDataInfo**](FieldDataInfo.md) ### Authorization @@ -393,7 +454,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: application/json + - **Content-Type**: text/plain - **Accept**: application/json ### HTTP response details diff --git a/python-restclient/docs/SaveFieldDataFromFile.md b/python-restclient/docs/SaveFieldDataFromFile.md new file mode 100644 index 0000000000..f1562adfcb --- /dev/null +++ b/python-restclient/docs/SaveFieldDataFromFile.md @@ -0,0 +1,35 @@ +# SaveFieldDataFromFile + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**short_spec_data** | **List[List[List[int]]]** | | [optional] +**var_names** | **List[str]** | | [optional] +**times** | **List[float]** | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**extent** | [**Extent**](Extent.md) | | [optional] +**isize** | [**ISize**](ISize.md) | | [optional] +**annotation** | **str** | | [optional] +**name** | **str** | | [optional] + +## Example + +```python +from vcell_client.models.save_field_data_from_file import SaveFieldDataFromFile + +# TODO update the JSON string below +json = "{}" +# create an instance of SaveFieldDataFromFile from a JSON string +save_field_data_from_file_instance = SaveFieldDataFromFile.from_json(json) +# print the JSON string representation of the object +print SaveFieldDataFromFile.to_json() + +# convert the object into a dict +save_field_data_from_file_dict = save_field_data_from_file_instance.to_dict() +# create an instance of SaveFieldDataFromFile from a dict +save_field_data_from_file_form_dict = save_field_data_from_file.from_dict(save_field_data_from_file_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/SimulationResourceApi.md b/python-restclient/docs/SimulationResourceApi.md index 6d8316759f..6ff98f6be7 100644 --- a/python-restclient/docs/SimulationResourceApi.md +++ b/python-restclient/docs/SimulationResourceApi.md @@ -79,8 +79,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -150,8 +150,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -221,8 +221,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/UsersResourceApi.md b/python-restclient/docs/UsersResourceApi.md index 4260e1d68a..c43e72100f 100644 --- a/python-restclient/docs/UsersResourceApi.md +++ b/python-restclient/docs/UsersResourceApi.md @@ -208,8 +208,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -275,8 +275,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | Successful, returning the identity | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -406,8 +406,8 @@ void (empty response body) |-------------|-------------|------------------| **200** | Successful, returning the identity | - | **409** | VCell Identity not mapped, userid already exists | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -477,8 +477,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -611,8 +611,8 @@ void (empty response body) |-------------|-------------|------------------| **200** | magic link sent in email if appropriate | - | **400** | unable to process request | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -681,8 +681,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**401** | Not Authorized | - | **403** | Not Allowed | - | +**401** | Not Authorized | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/test/test_data_identifier.py b/python-restclient/test/test_data_identifier.py new file mode 100644 index 0000000000..87851e6279 --- /dev/null +++ b/python-restclient/test/test_data_identifier.py @@ -0,0 +1,69 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.data_identifier import DataIdentifier + +class TestDataIdentifier(unittest.TestCase): + """DataIdentifier unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> DataIdentifier: + """Test DataIdentifier + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `DataIdentifier` + """ + model = DataIdentifier() + if include_optional: + return DataIdentifier( + name = '', + display_name = '', + variable_type = vcell_client.models.variable_type.VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '', ), + domain = vcell_client.models.domain.Domain( + name = '', ), + b_function = True, + function = True, + visible = True + ) + else: + return DataIdentifier( + ) + """ + + def testDataIdentifier(self): + """Test DataIdentifier""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_domain.py b/python-restclient/test/test_domain.py new file mode 100644 index 0000000000..f5e6507dd1 --- /dev/null +++ b/python-restclient/test/test_domain.py @@ -0,0 +1,53 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.domain import Domain + +class TestDomain(unittest.TestCase): + """Domain unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> Domain: + """Test Domain + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `Domain` + """ + model = Domain() + if include_optional: + return Domain( + name = '' + ) + else: + return Domain( + ) + """ + + def testDomain(self): + """Test Domain""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_file_operation_results.py b/python-restclient/test/test_field_data_file_operation_results.py new file mode 100644 index 0000000000..70d9dbaad7 --- /dev/null +++ b/python-restclient/test/test_field_data_file_operation_results.py @@ -0,0 +1,101 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_file_operation_results import FieldDataFileOperationResults + +class TestFieldDataFileOperationResults(unittest.TestCase): + """FieldDataFileOperationResults unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataFileOperationResults: + """Test FieldDataFileOperationResults + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataFileOperationResults` + """ + model = FieldDataFileOperationResults() + if include_optional: + return FieldDataFileOperationResults( + data_identifier_arr = [ + vcell_client.models.data_identifier.DataIdentifier( + name = '', + display_name = '', + variable_type = vcell_client.models.variable_type.VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '', ), + domain = vcell_client.models.domain.Domain( + name = '', ), + b_function = True, + function = True, + visible = True, ) + ], + i_size = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + times = [ + 1.337 + ], + dependant_function_info = [ + vcell_client.models.field_data_reference_info.FieldDataReferenceInfo( + reference_source_type = '', + reference_source_name = '', + application_name = '', + simulation_name = '', + ref_source_version_date = '', + func_names = [ + '' + ], + ref_source_version_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), ) + ] + ) + else: + return FieldDataFileOperationResults( + ) + """ + + def testFieldDataFileOperationResults(self): + """Test FieldDataFileOperationResults""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_file_operation_spec.py b/python-restclient/test/test_field_data_file_operation_spec.py index 6cc0716e98..058ba9b590 100644 --- a/python-restclient/test/test_field_data_file_operation_spec.py +++ b/python-restclient/test/test_field_data_file_operation_spec.py @@ -184,8 +184,7 @@ def make_instance(self, include_optional) -> FieldDataFileOperationSpec: i_d = vcell_client.models.key_value.KeyValue( value = 1.337, ), name = '', - test_account = True, ), - field_data_name = '' + test_account = True, ) ) else: return FieldDataFileOperationSpec( diff --git a/python-restclient/test/test_field_data_info.py b/python-restclient/test/test_field_data_info.py new file mode 100644 index 0000000000..54c81da783 --- /dev/null +++ b/python-restclient/test/test_field_data_info.py @@ -0,0 +1,68 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_info import FieldDataInfo + +class TestFieldDataInfo(unittest.TestCase): + """FieldDataInfo unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataInfo: + """Test FieldDataInfo + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataInfo` + """ + model = FieldDataInfo() + if include_optional: + return FieldDataInfo( + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + isize = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + times = [ + 1.337 + ] + ) + else: + return FieldDataInfo( + ) + """ + + def testFieldDataInfo(self): + """Test FieldDataInfo""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_reference_info.py b/python-restclient/test/test_field_data_reference_info.py new file mode 100644 index 0000000000..aca9a76da3 --- /dev/null +++ b/python-restclient/test/test_field_data_reference_info.py @@ -0,0 +1,62 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo + +class TestFieldDataReferenceInfo(unittest.TestCase): + """FieldDataReferenceInfo unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataReferenceInfo: + """Test FieldDataReferenceInfo + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataReferenceInfo` + """ + model = FieldDataReferenceInfo() + if include_optional: + return FieldDataReferenceInfo( + reference_source_type = '', + reference_source_name = '', + application_name = '', + simulation_name = '', + ref_source_version_date = '', + func_names = [ + '' + ], + ref_source_version_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ) + ) + else: + return FieldDataReferenceInfo( + ) + """ + + def testFieldDataReferenceInfo(self): + """Test FieldDataReferenceInfo""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_references.py b/python-restclient/test/test_field_data_references.py new file mode 100644 index 0000000000..9d3009a591 --- /dev/null +++ b/python-restclient/test/test_field_data_references.py @@ -0,0 +1,78 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_references import FieldDataReferences + +class TestFieldDataReferences(unittest.TestCase): + """FieldDataReferences unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataReferences: + """Test FieldDataReferences + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataReferences` + """ + model = FieldDataReferences() + if include_optional: + return FieldDataReferences( + external_data_identifiers = [ + vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ) + ], + external_data_annotations = [ + '' + ], + external_data_id_sim_refs = { + 'key' : [ + vcell_client.models.key_value.KeyValue( + value = 1.337, ) + ] + } + ) + else: + return FieldDataReferences( + ) + """ + + def testFieldDataReferences(self): + """Test FieldDataReferences""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_resource_api.py b/python-restclient/test/test_field_data_resource_api.py index f74177f6ca..37d45bfae6 100644 --- a/python-restclient/test/test_field_data_resource_api.py +++ b/python-restclient/test/test_field_data_resource_api.py @@ -34,8 +34,8 @@ def test_copy_field_data(self) -> None: """ pass - def test_create_new_field_data_from_file_already_analyzed(self) -> None: - """Test case for create_new_field_data_from_file_already_analyzed + def test_create_new_field_data_file(self) -> None: + """Test case for create_new_field_data_file """ pass @@ -54,12 +54,6 @@ def test_delete_field_data(self) -> None: """ pass - def test_generate_field_data_estimate(self) -> None: - """Test case for generate_field_data_estimate - - """ - pass - def test_get_all_field_data(self) -> None: """Test case for get_all_field_data diff --git a/python-restclient/test/test_save_field_data_from_file.py b/python-restclient/test/test_save_field_data_from_file.py new file mode 100644 index 0000000000..c6e752dc36 --- /dev/null +++ b/python-restclient/test/test_save_field_data_from_file.py @@ -0,0 +1,106 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.save_field_data_from_file import SaveFieldDataFromFile + +class TestSaveFieldDataFromFile(unittest.TestCase): + """SaveFieldDataFromFile unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> SaveFieldDataFromFile: + """Test SaveFieldDataFromFile + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `SaveFieldDataFromFile` + """ + model = SaveFieldDataFromFile() + if include_optional: + return SaveFieldDataFromFile( + short_spec_data = [ + [ + [ + 56 + ] + ] + ], + spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ), + var_names = [ + '' + ], + variable_types = [ + vcell_client.models.variable_type.VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '', ) + ], + times = [ + 1.337 + ], + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + isize = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, + x_yz = 56, ), + annotation = '' + ) + else: + return SaveFieldDataFromFile( + ) + """ + + def testSaveFieldDataFromFile(self): + """Test SaveFieldDataFromFile""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/vcell_client/__init__.py b/python-restclient/vcell_client/__init__.py index 1590d348a9..0daa8d7bc1 100644 --- a/python-restclient/vcell_client/__init__.py +++ b/python-restclient/vcell_client/__init__.py @@ -45,13 +45,16 @@ from vcell_client.models.biomodel_ref import BiomodelRef from vcell_client.models.cartesian_mesh import CartesianMesh from vcell_client.models.coordinate import Coordinate +from vcell_client.models.data_identifier import DataIdentifier from vcell_client.models.detailed_state import DetailedState +from vcell_client.models.domain import Domain from vcell_client.models.extent import Extent from vcell_client.models.external_data_identifier import ExternalDataIdentifier from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_info import FieldDataInfo from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_references import FieldDataReferences from vcell_client.models.field_data_save_results import FieldDataSaveResults from vcell_client.models.group_access import GroupAccess from vcell_client.models.hello_world_message import HelloWorldMessage diff --git a/python-restclient/vcell_client/api/bio_model_resource_api.py b/python-restclient/vcell_client/api/bio_model_resource_api.py index c31ac2bb00..adbb65b599 100644 --- a/python-restclient/vcell_client/api/bio_model_resource_api.py +++ b/python-restclient/vcell_client/api/bio_model_resource_api.py @@ -612,8 +612,8 @@ def upload_bio_model( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -681,8 +681,8 @@ def upload_bio_model_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -750,8 +750,8 @@ def upload_bio_model_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/api/field_data_resource_api.py b/python-restclient/vcell_client/api/field_data_resource_api.py index 51e1de9eb8..a9dd790a0c 100644 --- a/python-restclient/vcell_client/api/field_data_resource_api.py +++ b/python-restclient/vcell_client/api/field_data_resource_api.py @@ -31,9 +31,10 @@ from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData from vcell_client.models.external_data_identifier import ExternalDataIdentifier from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_info import FieldDataInfo from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_references import FieldDataReferences from vcell_client.models.field_data_save_results import FieldDataSaveResults from vcell_client.api_client import ApiClient @@ -1399,7 +1400,7 @@ def _generate_field_data_estimate_serialize( return self.api_client.param_serialize( method='POST', - resource_path='/api/v1/fieldData/createFieldDataFromFile', + resource_path='/api/v1/fieldData/analyzeFieldDataFromFile', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1416,9 +1417,8 @@ def _generate_field_data_estimate_serialize( @validate_call - def get_all_field_data( + def get_all_field_data_ids( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1431,12 +1431,10 @@ def get_all_field_data( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FieldDataExternalDataIDs: - """Get all of the field data for that user. + ) -> FieldDataReferences: + """Get all of the ids used to identify, and retrieve field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1459,8 +1457,7 @@ def get_all_field_data( :return: Returns the result object. """ # noqa: E501 - _param = self._get_all_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1468,7 +1465,7 @@ def get_all_field_data( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataExternalDataIDs" + '200': "FieldDataReferences" } response_data = self.api_client.call_api( @@ -1483,9 +1480,8 @@ def get_all_field_data( @validate_call - def get_all_field_data_with_http_info( + def get_all_field_data_ids_with_http_info( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1498,12 +1494,10 @@ def get_all_field_data_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FieldDataExternalDataIDs]: - """Get all of the field data for that user. + ) -> ApiResponse[FieldDataReferences]: + """Get all of the ids used to identify, and retrieve field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1526,8 +1520,7 @@ def get_all_field_data_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_all_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1535,7 +1528,7 @@ def get_all_field_data_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataExternalDataIDs" + '200': "FieldDataReferences" } response_data = self.api_client.call_api( @@ -1550,9 +1543,8 @@ def get_all_field_data_with_http_info( @validate_call - def get_all_field_data_without_preload_content( + def get_all_field_data_ids_without_preload_content( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1566,11 +1558,9 @@ def get_all_field_data_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Get all of the field data for that user. + """Get all of the ids used to identify, and retrieve field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1593,8 +1583,7 @@ def get_all_field_data_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_all_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1602,7 +1591,7 @@ def get_all_field_data_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataExternalDataIDs" + '200': "FieldDataReferences" } response_data = self.api_client.call_api( @@ -1612,9 +1601,8 @@ def get_all_field_data_without_preload_content( return response_data.response - def _get_all_field_data_serialize( + def _get_all_field_data_ids_serialize( self, - field_data_db_operation_spec, _request_auth, _content_type, _headers, @@ -1639,8 +1627,264 @@ def _get_all_field_data_serialize( # process the header parameters # process the form parameters # process the body parameter - if field_data_db_operation_spec is not None: - _body_params = field_data_db_operation_spec + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/fieldData/IDs', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def get_field_data_from_id( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FieldDataInfo: + """Get the field data from the selected field data ID. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_field_data_from_id_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataInfo" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def get_field_data_from_id_with_http_info( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FieldDataInfo]: + """Get the field data from the selected field data ID. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_field_data_from_id_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataInfo" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def get_field_data_from_id_without_preload_content( + self, + body: Optional[StrictStr] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Get the field data from the selected field data ID. + + + :param body: + :type body: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_field_data_from_id_serialize( + body=body, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FieldDataInfo" + + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_field_data_from_id_serialize( + self, + body, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> Tuple: + + _host = None + + _collection_formats: Dict[str, str] = { + + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, str] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if body is not None: + _body_params = body # set the HTTP header `Accept` @@ -1657,7 +1901,7 @@ def _get_all_field_data_serialize( _default_content_type = ( self.api_client.select_header_content_type( [ - 'application/json' + 'text/plain' ] ) ) diff --git a/python-restclient/vcell_client/api/simulation_resource_api.py b/python-restclient/vcell_client/api/simulation_resource_api.py index 1d2f938779..0cc5e36691 100644 --- a/python-restclient/vcell_client/api/simulation_resource_api.py +++ b/python-restclient/vcell_client/api/simulation_resource_api.py @@ -111,8 +111,8 @@ def get_simulation_status( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -188,8 +188,8 @@ def get_simulation_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -265,8 +265,8 @@ def get_simulation_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -402,8 +402,8 @@ def start_simulation( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -471,8 +471,8 @@ def start_simulation_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -540,8 +540,8 @@ def start_simulation_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -667,8 +667,8 @@ def stop_simulation( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -736,8 +736,8 @@ def stop_simulation_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -805,8 +805,8 @@ def stop_simulation_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/api/users_resource_api.py b/python-restclient/vcell_client/api/users_resource_api.py index 4cf7621633..77b2e2ff5f 100644 --- a/python-restclient/vcell_client/api/users_resource_api.py +++ b/python-restclient/vcell_client/api/users_resource_api.py @@ -597,8 +597,8 @@ def get_legacy_api_token( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -662,8 +662,8 @@ def get_legacy_api_token_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -727,8 +727,8 @@ def get_legacy_api_token_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -847,8 +847,8 @@ def get_mapped_user( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -912,8 +912,8 @@ def get_mapped_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -977,8 +977,8 @@ def get_mapped_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -1607,8 +1607,8 @@ def map_user( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -1676,8 +1676,8 @@ def map_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -1745,8 +1745,8 @@ def map_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -2405,8 +2405,8 @@ def unmap_user( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -2474,8 +2474,8 @@ def unmap_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( @@ -2543,8 +2543,8 @@ def unmap_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '401': None, - '403': None + '403': None, + '401': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/models/__init__.py b/python-restclient/vcell_client/models/__init__.py index d7e25cae50..999a81c145 100644 --- a/python-restclient/vcell_client/models/__init__.py +++ b/python-restclient/vcell_client/models/__init__.py @@ -22,13 +22,16 @@ from vcell_client.models.biomodel_ref import BiomodelRef from vcell_client.models.cartesian_mesh import CartesianMesh from vcell_client.models.coordinate import Coordinate +from vcell_client.models.data_identifier import DataIdentifier from vcell_client.models.detailed_state import DetailedState +from vcell_client.models.domain import Domain from vcell_client.models.extent import Extent from vcell_client.models.external_data_identifier import ExternalDataIdentifier from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec +from vcell_client.models.field_data_info import FieldDataInfo from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.field_data_references import FieldDataReferences from vcell_client.models.field_data_save_results import FieldDataSaveResults from vcell_client.models.group_access import GroupAccess from vcell_client.models.hello_world_message import HelloWorldMessage diff --git a/python-restclient/vcell_client/models/data_identifier.py b/python-restclient/vcell_client/models/data_identifier.py new file mode 100644 index 0000000000..c9eaf2fee3 --- /dev/null +++ b/python-restclient/vcell_client/models/data_identifier.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictBool, StrictStr +from pydantic import Field +from vcell_client.models.domain import Domain +from vcell_client.models.variable_type import VariableType +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class DataIdentifier(BaseModel): + """ + DataIdentifier + """ # noqa: E501 + name: Optional[StrictStr] = None + display_name: Optional[StrictStr] = Field(default=None, alias="displayName") + variable_type: Optional[VariableType] = Field(default=None, alias="variableType") + domain: Optional[Domain] = None + b_function: Optional[StrictBool] = Field(default=None, alias="bFunction") + function: Optional[StrictBool] = None + visible: Optional[StrictBool] = None + __properties: ClassVar[List[str]] = ["name", "displayName", "variableType", "domain", "bFunction", "function", "visible"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DataIdentifier from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of variable_type + if self.variable_type: + _dict['variableType'] = self.variable_type.to_dict() + # override the default output from pydantic by calling `to_dict()` of domain + if self.domain: + _dict['domain'] = self.domain.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of DataIdentifier from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in DataIdentifier) in the input: " + _key) + + _obj = cls.model_validate({ + "name": obj.get("name"), + "displayName": obj.get("displayName"), + "variableType": VariableType.from_dict(obj.get("variableType")) if obj.get("variableType") is not None else None, + "domain": Domain.from_dict(obj.get("domain")) if obj.get("domain") is not None else None, + "bFunction": obj.get("bFunction"), + "function": obj.get("function"), + "visible": obj.get("visible") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/domain.py b/python-restclient/vcell_client/models/domain.py new file mode 100644 index 0000000000..6fe1a27aaa --- /dev/null +++ b/python-restclient/vcell_client/models/domain.py @@ -0,0 +1,93 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class Domain(BaseModel): + """ + Domain + """ # noqa: E501 + name: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["name"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of Domain from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of Domain from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in Domain) in the input: " + _key) + + _obj = cls.model_validate({ + "name": obj.get("name") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_file_operation_results.py b/python-restclient/vcell_client/models/field_data_file_operation_results.py new file mode 100644 index 0000000000..c0395c993c --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_file_operation_results.py @@ -0,0 +1,138 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +from pydantic import Field +from vcell_client.models.data_identifier import DataIdentifier +from vcell_client.models.extent import Extent +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo +from vcell_client.models.i_size import ISize +from vcell_client.models.origin import Origin +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataFileOperationResults(BaseModel): + """ + FieldDataFileOperationResults + """ # noqa: E501 + data_identifier_arr: Optional[List[DataIdentifier]] = Field(default=None, alias="dataIdentifierArr") + external_data_identifier: Optional[ExternalDataIdentifier] = Field(default=None, alias="externalDataIdentifier") + i_size: Optional[ISize] = Field(default=None, alias="iSize") + origin: Optional[Origin] = None + extent: Optional[Extent] = None + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + dependant_function_info: Optional[List[FieldDataReferenceInfo]] = Field(default=None, alias="dependantFunctionInfo") + __properties: ClassVar[List[str]] = ["dataIdentifierArr", "externalDataIdentifier", "iSize", "origin", "extent", "times", "dependantFunctionInfo"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataFileOperationResults from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in data_identifier_arr (list) + _items = [] + if self.data_identifier_arr: + for _item in self.data_identifier_arr: + if _item: + _items.append(_item.to_dict()) + _dict['dataIdentifierArr'] = _items + # override the default output from pydantic by calling `to_dict()` of external_data_identifier + if self.external_data_identifier: + _dict['externalDataIdentifier'] = self.external_data_identifier.to_dict() + # override the default output from pydantic by calling `to_dict()` of i_size + if self.i_size: + _dict['iSize'] = self.i_size.to_dict() + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in dependant_function_info (list) + _items = [] + if self.dependant_function_info: + for _item in self.dependant_function_info: + if _item: + _items.append(_item.to_dict()) + _dict['dependantFunctionInfo'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataFileOperationResults from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataFileOperationResults) in the input: " + _key) + + _obj = cls.model_validate({ + "dataIdentifierArr": [DataIdentifier.from_dict(_item) for _item in obj.get("dataIdentifierArr")] if obj.get("dataIdentifierArr") is not None else None, + "externalDataIdentifier": ExternalDataIdentifier.from_dict(obj.get("externalDataIdentifier")) if obj.get("externalDataIdentifier") is not None else None, + "iSize": ISize.from_dict(obj.get("iSize")) if obj.get("iSize") is not None else None, + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "times": obj.get("times"), + "dependantFunctionInfo": [FieldDataReferenceInfo.from_dict(_item) for _item in obj.get("dependantFunctionInfo")] if obj.get("dependantFunctionInfo") is not None else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_info.py b/python-restclient/vcell_client/models/field_data_info.py new file mode 100644 index 0000000000..ad26925cd3 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_info.py @@ -0,0 +1,122 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +from pydantic import Field +from vcell_client.models.data_identifier import DataIdentifier +from vcell_client.models.extent import Extent +from vcell_client.models.i_size import ISize +from vcell_client.models.origin import Origin +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataInfo(BaseModel): + """ + FieldDataInfo + """ # noqa: E501 + extent: Optional[Extent] = None + origin: Optional[Origin] = None + isize: Optional[ISize] = None + data_identifier: Optional[List[DataIdentifier]] = Field(default=None, alias="dataIdentifier") + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + __properties: ClassVar[List[str]] = ["extent", "origin", "isize", "dataIdentifier", "times"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataInfo from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of isize + if self.isize: + _dict['isize'] = self.isize.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in data_identifier (list) + _items = [] + if self.data_identifier: + for _item in self.data_identifier: + if _item: + _items.append(_item.to_dict()) + _dict['dataIdentifier'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataInfo from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataInfo) in the input: " + _key) + + _obj = cls.model_validate({ + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, + "dataIdentifier": [DataIdentifier.from_dict(_item) for _item in obj.get("dataIdentifier")] if obj.get("dataIdentifier") is not None else None, + "times": obj.get("times") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_reference_info.py b/python-restclient/vcell_client/models/field_data_reference_info.py new file mode 100644 index 0000000000..098481c735 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_reference_info.py @@ -0,0 +1,110 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +from pydantic import Field +from vcell_client.models.key_value import KeyValue +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataReferenceInfo(BaseModel): + """ + FieldDataReferenceInfo + """ # noqa: E501 + reference_source_type: Optional[StrictStr] = Field(default=None, alias="referenceSourceType") + reference_source_name: Optional[StrictStr] = Field(default=None, alias="referenceSourceName") + application_name: Optional[StrictStr] = Field(default=None, alias="applicationName") + simulation_name: Optional[StrictStr] = Field(default=None, alias="simulationName") + ref_source_version_date: Optional[StrictStr] = Field(default=None, alias="refSourceVersionDate") + func_names: Optional[List[StrictStr]] = Field(default=None, alias="funcNames") + ref_source_version_key: Optional[KeyValue] = Field(default=None, alias="refSourceVersionKey") + __properties: ClassVar[List[str]] = ["referenceSourceType", "referenceSourceName", "applicationName", "simulationName", "refSourceVersionDate", "funcNames", "refSourceVersionKey"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataReferenceInfo from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of ref_source_version_key + if self.ref_source_version_key: + _dict['refSourceVersionKey'] = self.ref_source_version_key.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataReferenceInfo from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataReferenceInfo) in the input: " + _key) + + _obj = cls.model_validate({ + "referenceSourceType": obj.get("referenceSourceType"), + "referenceSourceName": obj.get("referenceSourceName"), + "applicationName": obj.get("applicationName"), + "simulationName": obj.get("simulationName"), + "refSourceVersionDate": obj.get("refSourceVersionDate"), + "funcNames": obj.get("funcNames"), + "refSourceVersionKey": KeyValue.from_dict(obj.get("refSourceVersionKey")) if obj.get("refSourceVersionKey") is not None else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_references.py b/python-restclient/vcell_client/models/field_data_references.py new file mode 100644 index 0000000000..5143fe7559 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_references.py @@ -0,0 +1,123 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +from pydantic import Field +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.key_value import KeyValue +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataReferences(BaseModel): + """ + FieldDataReferences + """ # noqa: E501 + external_data_identifiers: Optional[List[ExternalDataIdentifier]] = Field(default=None, alias="externalDataIdentifiers") + external_data_annotations: Optional[List[StrictStr]] = Field(default=None, alias="externalDataAnnotations") + external_data_id_sim_refs: Optional[Dict[str, List[KeyValue]]] = Field(default=None, alias="externalDataIDSimRefs") + __properties: ClassVar[List[str]] = ["externalDataIdentifiers", "externalDataAnnotations", "externalDataIDSimRefs"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataReferences from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in external_data_identifiers (list) + _items = [] + if self.external_data_identifiers: + for _item in self.external_data_identifiers: + if _item: + _items.append(_item.to_dict()) + _dict['externalDataIdentifiers'] = _items + # override the default output from pydantic by calling `to_dict()` of each value in external_data_id_sim_refs (dict of array) + _field_dict_of_array = {} + if self.external_data_id_sim_refs: + for _key in self.external_data_id_sim_refs: + if self.external_data_id_sim_refs[_key] is not None: + _field_dict_of_array[_key] = [ + _item.to_dict() for _item in self.external_data_id_sim_refs[_key] + ] + _dict['externalDataIDSimRefs'] = _field_dict_of_array + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataReferences from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataReferences) in the input: " + _key) + + _obj = cls.model_validate({ + "externalDataIdentifiers": [ExternalDataIdentifier.from_dict(_item) for _item in obj.get("externalDataIdentifiers")] if obj.get("externalDataIdentifiers") is not None else None, + "externalDataAnnotations": obj.get("externalDataAnnotations"), + "externalDataIDSimRefs": dict( + (_k, + [KeyValue.from_dict(_item) for _item in _v] + if _v is not None + else None + ) + for _k, _v in obj.get("externalDataIDSimRefs").items() + ) + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/save_field_data_from_file.py b/python-restclient/vcell_client/models/save_field_data_from_file.py new file mode 100644 index 0000000000..839d065eb6 --- /dev/null +++ b/python-restclient/vcell_client/models/save_field_data_from_file.py @@ -0,0 +1,120 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr +from pydantic import Field +from vcell_client.models.extent import Extent +from vcell_client.models.i_size import ISize +from vcell_client.models.origin import Origin +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class SaveFieldDataFromFile(BaseModel): + """ + SaveFieldDataFromFile + """ # noqa: E501 + short_spec_data: Optional[List[List[List[StrictInt]]]] = Field(default=None, alias="shortSpecData") + var_names: Optional[List[StrictStr]] = Field(default=None, alias="varNames") + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + origin: Optional[Origin] = None + extent: Optional[Extent] = None + isize: Optional[ISize] = None + annotation: Optional[StrictStr] = None + name: Optional[StrictStr] = None + __properties: ClassVar[List[str]] = ["shortSpecData", "varNames", "times", "origin", "extent", "isize", "annotation", "name"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of SaveFieldDataFromFile from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of isize + if self.isize: + _dict['isize'] = self.isize.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of SaveFieldDataFromFile from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in SaveFieldDataFromFile) in the input: " + _key) + + _obj = cls.model_validate({ + "shortSpecData": obj.get("shortSpecData"), + "varNames": obj.get("varNames"), + "times": obj.get("times"), + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, + "annotation": obj.get("annotation"), + "name": obj.get("name") + }) + return _obj + + diff --git a/tools/java-config.yaml b/tools/java-config.yaml index bfc0085a6a..9bc21c9a49 100644 --- a/tools/java-config.yaml +++ b/tools/java-config.yaml @@ -54,3 +54,5 @@ additionalProperties: withAWSV4Signature: false # default withXml: false # default (whether to include support for application/xml content type and include XML annotations in the model) ... is this needed for VCML, SBML? +#importMappings: +# FieldDataFileOperationSpec: cbit.vcell.field.io.FieldDataFileOperationSpec diff --git a/tools/openapi.yaml b/tools/openapi.yaml index b75e9577a1..9abb8b14ac 100644 --- a/tools/openapi.yaml +++ b/tools/openapi.yaml @@ -42,10 +42,10 @@ paths: application/json: schema: $ref: '#/components/schemas/SimulationStatusPersistentRecord' - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -70,10 +70,10 @@ paths: type: array items: $ref: '#/components/schemas/StatusMessage' - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -98,10 +98,10 @@ paths: type: array items: $ref: '#/components/schemas/StatusMessage' - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -137,10 +137,10 @@ paths: text/plain: schema: type: string - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -183,20 +183,20 @@ paths: get: tags: - Field Data Resource - summary: Get all of the field data for that user. - operationId: getAllFieldData + summary: Get the field data from the selected field data ID. + operationId: getFieldDataFromID requestBody: content: - application/json: + text/plain: schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + type: string responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/FieldDataExternalDataIDs' + $ref: '#/components/schemas/FieldDataInfo' delete: tags: - Field Data Resource @@ -210,25 +210,20 @@ paths: responses: "204": description: No Content - /api/v1/fieldData/copy: - post: + /api/v1/fieldData/IDs: + get: tags: - Field Data Resource - summary: Copy an existing field data entry. - operationId: copyFieldData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + summary: "Get all of the ids used to identify, and retrieve field data." + operationId: getAllFieldDataIDs responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/FieldDataNoCopyConflict' - /api/v1/fieldData/createFieldDataFromFile: + $ref: '#/components/schemas/FieldDataReferences' + /api/v1/fieldData/analyzeFieldDataFromFile: post: tags: - Field Data Resource @@ -245,6 +240,24 @@ paths: application/json: schema: $ref: '#/components/schemas/FieldDataFileOperationSpec' + /api/v1/fieldData/copy: + post: + tags: + - Field Data Resource + summary: Copy an existing field data entry. + operationId: copyFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataNoCopyConflict' /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: post: tags: @@ -391,10 +404,10 @@ paths: application/json: schema: $ref: '#/components/schemas/AccesTokenRepresentationRecord' - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -453,10 +466,10 @@ paths: application/json: schema: type: boolean - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -473,10 +486,10 @@ paths: application/json: schema: $ref: '#/components/schemas/UserIdentityJSONSafe' - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -509,10 +522,10 @@ paths: description: "Successful, returning the identity" "409": description: "VCell Identity not mapped, userid already exists" - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -552,10 +565,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -578,10 +591,10 @@ paths: application/json: schema: type: boolean - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -752,6 +765,23 @@ components: z: format: double type: number + DataIdentifier: + type: object + properties: + name: + type: string + displayName: + type: string + variableType: + $ref: '#/components/schemas/VariableType' + domain: + $ref: '#/components/schemas/Domain' + bFunction: + type: boolean + function: + type: boolean + visible: + type: boolean Date: format: date type: string @@ -809,6 +839,11 @@ components: - WORKEREVENT_FAILURE - JOB_FAILED type: string + Domain: + type: object + properties: + name: + type: string Extent: type: object properties: @@ -869,23 +904,6 @@ components: $ref: '#/components/schemas/VersionableTypeVersion' bIncludeSimRefs: type: boolean - FieldDataExternalDataIDs: - type: object - properties: - externalDataIdentifiers: - type: array - items: - $ref: '#/components/schemas/ExternalDataIdentifier' - externalDataAnnotations: - type: array - items: - type: string - externalDataIDSimRefs: - type: object - additionalProperties: - type: array - items: - $ref: '#/components/schemas/KeyValue' FieldDataFile: type: object properties: @@ -953,6 +971,24 @@ components: $ref: '#/components/schemas/User' fieldDataName: type: string + FieldDataInfo: + type: object + properties: + extent: + $ref: '#/components/schemas/Extent' + origin: + $ref: '#/components/schemas/Origin' + isize: + $ref: '#/components/schemas/ISize' + dataIdentifier: + type: array + items: + $ref: '#/components/schemas/DataIdentifier' + times: + type: array + items: + format: double + type: number FieldDataNoCopyConflict: type: object properties: @@ -964,6 +1000,23 @@ components: type: object additionalProperties: $ref: '#/components/schemas/KeyValue' + FieldDataReferences: + type: object + properties: + externalDataIdentifiers: + type: array + items: + $ref: '#/components/schemas/ExternalDataIdentifier' + externalDataAnnotations: + type: array + items: + type: string + externalDataIDSimRefs: + type: object + additionalProperties: + type: array + items: + $ref: '#/components/schemas/KeyValue' FieldDataSaveResults: type: object properties: diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java index e3e2fb8a0a..34a11f6fa5 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java @@ -11,12 +11,13 @@ package cbit.vcell.field; import java.io.Serializable; -import java.util.HashMap; -import java.util.Hashtable; -import java.util.Vector; +import java.util.*; +import java.util.stream.Collectors; +import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; +import org.vcell.util.document.User; public class FieldDataDBOperationResults implements Serializable { @@ -27,4 +28,21 @@ public class FieldDataDBOperationResults implements Serializable { public Hashtable oldNameNewIDHash; public Hashtable oldNameOldExtDataIDKeyHash; public HashMap> extdataIDAndSimRefH; + + + public static FieldDataDBOperationResults fieldDataReferencesToDBResults(FieldDataReferences dto, User user){ + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataIDArr = dto.getExternalDataIdentifiers().stream().map(ExternalDataIdentifier::dtoToExternalDataIdentifier).toArray(ExternalDataIdentifier[]::new); + fieldDataDBOperationResults.extDataAnnotArr = dto.getExternalDataAnnotations().toArray(new String[0]); + fieldDataDBOperationResults.extdataIDAndSimRefH = new HashMap<>(); + if (dto.getExternalDataIDSimRefs() == null){ + return fieldDataDBOperationResults; + } + for (Map.Entry> entry : dto.getExternalDataIDSimRefs().entrySet()){ + fieldDataDBOperationResults.extdataIDAndSimRefH.put(new ExternalDataIdentifier(new KeyValue(entry.getKey()), user, ""), + entry.getValue().stream().map(KeyValue::dtoToKeyValue).collect(Collectors.toCollection(Vector::new))); + } + return fieldDataDBOperationResults; + } + } diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationSpec.java index 977641a823..78e27f6670 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationSpec.java @@ -36,13 +36,15 @@ public class FieldDataDBOperationSpec implements Serializable { private FieldDataDBOperationSpec(){ } - + private static FieldDataDBOperationSpec createOwnedFieldDataDBOperationSpec(User owner){ FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); fieldDataDBOperationSpec.owner = owner; return fieldDataDBOperationSpec; } + + @Deprecated public static FieldDataDBOperationSpec createCopyNoConflictExtDataIDsSpec( User argOwner,String[] argSourceNames,VersionableTypeVersion argSourceOwner){ FieldDataDBOperationSpec fieldDataDBOperationSpec = @@ -52,12 +54,16 @@ public static FieldDataDBOperationSpec createCopyNoConflictExtDataIDsSpec( fieldDataDBOperationSpec.sourceOwner = argSourceOwner; return fieldDataDBOperationSpec; } + + @Deprecated public static FieldDataDBOperationSpec createGetExtDataIDsSpec(User owner){ FieldDataDBOperationSpec fieldDataDBOperationSpec = createOwnedFieldDataDBOperationSpec(owner); fieldDataDBOperationSpec.opType = fieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS; return fieldDataDBOperationSpec; } + + @Deprecated public static FieldDataDBOperationSpec createGetExtDataIDsSpecWithSimRefs(User owner){ FieldDataDBOperationSpec fieldDataDBOperationSpec = createOwnedFieldDataDBOperationSpec(owner); @@ -65,6 +71,8 @@ public static FieldDataDBOperationSpec createGetExtDataIDsSpecWithSimRefs(User o fieldDataDBOperationSpec.bIncludeSimRefs = true; return fieldDataDBOperationSpec; } + + @Deprecated public static FieldDataDBOperationSpec createSaveNewExtDataIDSpec( User owner,String newExtDataIDName,String newExtDataAnnot){ FieldDataDBOperationSpec fieldDataDBOperationSpec = @@ -74,6 +82,8 @@ public static FieldDataDBOperationSpec createSaveNewExtDataIDSpec( fieldDataDBOperationSpec.annotation = newExtDataAnnot; return fieldDataDBOperationSpec; } + + @Deprecated public static FieldDataDBOperationSpec createDeleteExtDataIDSpec(ExternalDataIdentifier deleteExtDataID){ FieldDataDBOperationSpec fieldDataDBOperationSpec = createOwnedFieldDataDBOperationSpec(deleteExtDataID.getOwner()); diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java index 810d394f5d..0940ecaa04 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java @@ -10,16 +10,15 @@ package cbit.vcell.field.io; -import org.vcell.restclient.model.FieldDataReferenceInfo; +import cbit.vcell.simdata.DataIdentifier; +import org.vcell.restclient.model.FieldDataInfo; +import org.vcell.restclient.model.FieldDataSaveResults; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; - -import cbit.vcell.simdata.DataIdentifier; - -import java.util.Arrays; +import org.vcell.util.document.User; /** * Insert the type's description here. @@ -39,18 +38,6 @@ public static class FieldDataReferenceInfo{ public String refSourceVersionDate; public String[] funcNames; public KeyValue refSourceVersionKey; - - public static FieldDataReferenceInfo dtoToFielddataFileOperationResults(org.vcell.restclient.model.FieldDataReferenceInfo dto){ - FieldDataReferenceInfo fieldDataReferenceInfo = new FieldDataReferenceInfo(); - fieldDataReferenceInfo.referenceSourceType = dto.getReferenceSourceType(); - fieldDataReferenceInfo.referenceSourceName = dto.getReferenceSourceName(); - fieldDataReferenceInfo.simulationName = dto.getSimulationName(); - fieldDataReferenceInfo.applicationName = dto.getApplicationName(); - fieldDataReferenceInfo.refSourceVersionDate = dto.getRefSourceVersionDate(); - fieldDataReferenceInfo.funcNames = dto.getFuncNames().toArray(new String[0]); - fieldDataReferenceInfo.refSourceVersionKey = KeyValue.dtoToKeyValue(dto.getRefSourceVersionKey()); - return fieldDataReferenceInfo; - } }; @@ -61,20 +48,25 @@ public static FieldDataReferenceInfo dtoToFielddataFileOperationResults(org.vcel public Extent extent; public double[] times; public FieldDataFileOperationResults.FieldDataReferenceInfo[] dependantFunctionInfo; - - public static FieldDataFileOperationResults dtoToFieldDataFileOperationResults(org.vcell.restclient.model.FieldDataFileOperationResults dto){ - FieldDataFileOperationResults fieldDataFileOperationResults = new FieldDataFileOperationResults(); - fieldDataFileOperationResults.extent = Extent.dtoToExtent(dto.getExtent()); - fieldDataFileOperationResults.iSize = ISize.dtoToISize(dto.getiSize()); - fieldDataFileOperationResults.origin = Origin.dtoToOrigin(dto.getOrigin()); - fieldDataFileOperationResults.dataIdentifierArr = dto.getDataIdentifierArr().stream().map(DataIdentifier::dtoToDataIdentifier).toArray(DataIdentifier[]::new); - fieldDataFileOperationResults.times = dto.getTimes().stream().mapToDouble(Double::doubleValue).toArray(); - fieldDataFileOperationResults.dependantFunctionInfo = dto.getDependantFunctionInfo() == null ? null : dto.getDependantFunctionInfo().stream().map(FieldDataReferenceInfo::dtoToFielddataFileOperationResults).toArray(FieldDataReferenceInfo[]::new); - fieldDataFileOperationResults.externalDataIdentifier = ExternalDataIdentifier.dtoToExternalDataIdentifier(dto.getExternalDataIdentifier()); - return fieldDataFileOperationResults; - } public FieldDataFileOperationResults() { super(); } + + public static FieldDataFileOperationResults fieldDataInfoDTOToFileOperationResults(FieldDataInfo dto){ + FieldDataFileOperationResults results = new FieldDataFileOperationResults(); + results.extent = Extent.dtoToExtent(dto.getExtent()); + results.origin = Origin.dtoToOrigin(dto.getOrigin()); + results.iSize = ISize.dtoToISize(dto.getIsize()); + results.times = dto.getTimes().stream().mapToDouble(Double::doubleValue).toArray(); + results.dataIdentifierArr = dto.getDataIdentifier().stream().map(DataIdentifier::dtoToDataIdentifier).toArray(DataIdentifier[]::new); + return results; + } + + public static FieldDataFileOperationResults fieldDataSaveResultsDTOToFileOperationResults(FieldDataSaveResults dto, User owner){ + FieldDataFileOperationResults fieldDataFileOperationResults = new FieldDataFileOperationResults(); + fieldDataFileOperationResults.externalDataIdentifier = new ExternalDataIdentifier(new KeyValue(dto.getFieldDataID()), owner, dto.getFieldDataName()); + return fieldDataFileOperationResults; + } + } diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java index 9ae1569fac..dd6ee3ad09 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java @@ -11,7 +11,7 @@ package cbit.vcell.field.io; import org.vcell.restclient.model.AnalyzedResultsFromFieldData; -import org.vcell.restclient.model.FieldDataFileOperationResults; +import org.vcell.restclient.model.FieldDataInfo; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; diff --git a/vcell-core/src/main/java/cbit/vcell/math/Variable.java b/vcell-core/src/main/java/cbit/vcell/math/Variable.java index 45d7e3f7d7..440b498a1f 100644 --- a/vcell-core/src/main/java/cbit/vcell/math/Variable.java +++ b/vcell-core/src/main/java/cbit/vcell/math/Variable.java @@ -10,9 +10,9 @@ package cbit.vcell.math; -import java.io.Serializable; -import java.util.StringTokenizer; - +import cbit.vcell.geometry.GeometryClass; +import cbit.vcell.parser.*; +import cbit.vcell.units.VCUnitDefinition; import org.vcell.restclient.model.Domain; import org.vcell.util.Compare; import org.vcell.util.EqualsUtil; @@ -20,14 +20,8 @@ import org.vcell.util.Matchable; import org.vcell.util.TokenMangler; -import cbit.vcell.geometry.GeometryClass; -import cbit.vcell.parser.Expression; -import cbit.vcell.parser.ExpressionBindingException; -import cbit.vcell.parser.ExpressionException; -import cbit.vcell.parser.NameScope; -import cbit.vcell.parser.SymbolTable; -import cbit.vcell.parser.SymbolTableEntry; -import cbit.vcell.units.VCUnitDefinition; +import java.io.Serializable; +import java.util.StringTokenizer; /** * This class was generated by a SmartGuide. * @@ -47,8 +41,9 @@ public static class Domain implements Matchable, Serializable { private String name = null; public static Domain dtoToDomain(org.vcell.restclient.model.Domain dto){ - return dto != null ? new Domain(dto.getName()) : null; + return new Domain(dto.getName()); } + public Domain(String argName){ String nameWithPeriodsMangled = argName.replace('.','_'); @@ -85,7 +80,6 @@ public String toString(){ /** * This method was created by a SmartGuide. - * @param name java.lang.String */ protected Variable (String argName, Domain argDomain ) { if (argName == null) { diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java index 7716722725..f1ee34e147 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java @@ -16,9 +16,6 @@ import org.vcell.restclient.model.*; import org.vcell.solver.nfsim.NFSimMolecularConfigurations; import org.vcell.util.DataAccessException; -import org.vcell.util.Extent; -import org.vcell.util.ISize; -import org.vcell.util.Origin; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; import org.vcell.util.document.UserLoginInfo; @@ -44,12 +41,6 @@ import cbit.vcell.simdata.SpatialSelection; import cbit.vcell.solvers.CartesianMesh; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; - /** * This interface was generated by a SmartGuide. * @@ -75,14 +66,14 @@ public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperati if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_ADD){ AnalyzedResultsFromFieldData analyzedResultsFromFieldData = FieldDataFileOperationSpec.fieldDataSpecToAnalyzedResultsDTO(fieldDataFileOperationSpec); FieldDataSaveResults results = vCellApiClient.getFieldDataApi().createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); - FieldDataFileOperationResults fieldDataFileOperationResults = new FieldDataFileOperationResults(); - fieldDataFileOperationResults.externalDataIdentifier = new ExternalDataIdentifier(new KeyValue(results.getFieldDataID()), fieldDataFileOperationSpec.owner, results.getFieldDataName()); - return fieldDataFileOperationResults; + return FieldDataFileOperationResults.fieldDataSaveResultsDTOToFileOperationResults(results, fieldDataFileOperationSpec.owner); } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DELETE) { vCellApiClient.getFieldDataApi().deleteFieldData(fieldDataFileOperationSpec.specEDI.getKey().toString()); return null; - } - else { + } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_INFO) { + FieldDataInfo fieldDataInfo = vCellApiClient.getFieldDataApi().getFieldDataFromID(fieldDataFileOperationSpec.sourceSimDataKey.toString()); + return FieldDataFileOperationResults.fieldDataInfoDTOToFileOperationResults(fieldDataInfo); + } else { return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); } } catch (DataAccessException e){ diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java index 22bc284c90..6b1f913d73 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java @@ -15,6 +15,8 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.vcell.api.client.VCellApiClient; +import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.BigString; import org.vcell.util.DataAccessException; import org.vcell.util.ObjectNotFoundException; @@ -44,13 +46,15 @@ */ public class LocalUserMetaDbServerMessaging implements UserMetaDbServer { private RpcDbServerProxy dbServerProxy = null; + private final VCellApiClient vCellApiClient; private static Logger lg = LogManager.getLogger(LocalUserMetaDbServerMessaging.class); /** * This method was created in VisualAge. */ -public LocalUserMetaDbServerMessaging(UserLoginInfo userLoginInfo, RpcSender rpcSender) { +public LocalUserMetaDbServerMessaging(UserLoginInfo userLoginInfo, RpcSender rpcSender, VCellApiClient vCellApiClient) { this.dbServerProxy = new RpcDbServerProxy(userLoginInfo, rpcSender); + this.vCellApiClient = vCellApiClient; } public TreeMap> getSpecialUsers() throws DataAccessException{ @@ -124,8 +128,12 @@ public FieldDataDBOperationResults fieldDataDBOperation(FieldDataDBOperationSpec if (lg.isTraceEnabled()) lg.trace("LocalUserMetaDbServerMessaging.fieldDataDBOperation(...)"); if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE){ throw new RuntimeException("Can not call deletion on field data DB entry. Have to do both file, and DB deletion."); + } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { + FieldDataReferences fieldDataReferences = vCellApiClient.getFieldDataApi().getAllFieldDataIDs(); + return FieldDataDBOperationResults.fieldDataReferencesToDBResults(fieldDataReferences, fieldDataDBOperationSpec.owner); + } else{ + return dbServerProxy.fieldDataDBOperation(fieldDataDBOperationSpec); } - return dbServerProxy.fieldDataDBOperation(fieldDataDBOperationSpec); } catch (DataAccessException e) { lg.error(e.getMessage(),e); throw e; diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java index d98a2584e2..47a9b47ab6 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalVCellConnectionMessaging.java @@ -78,7 +78,7 @@ public UserLoginInfo getUserLoginInfo() { public UserMetaDbServer getUserMetaDbServer() throws DataAccessException { if (lg.isTraceEnabled()) lg.trace("LocalVCellConnectionMessaging.getUserMetaDbServer(" + getUserLoginInfo().getUser() + ")"); if (userMetaDbServerMessaging == null) { - userMetaDbServerMessaging = new LocalUserMetaDbServerMessaging(getUserLoginInfo(), rpcSender); + userMetaDbServerMessaging = new LocalUserMetaDbServerMessaging(getUserLoginInfo(), rpcSender, vCellApiClient); } return userMetaDbServerMessaging; } diff --git a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java index 099d776941..0145c24c7d 100644 --- a/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java +++ b/vcell-core/src/main/java/cbit/vcell/simdata/DataIdentifier.java @@ -28,11 +28,6 @@ public class DataIdentifier implements java.io.Serializable { private Domain domain = null; private boolean bFunction = false; - public static DataIdentifier dtoToDataIdentifier(org.vcell.restclient.model.DataIdentifier dto) { - return new DataIdentifier(dto.getName(), VariableType.dtoToVariableType(dto.getVariableType()), - Domain.dtoToDomain(dto.getDomain()),dto.getbFunction() != null && dto.getbFunction(), dto.getDisplayName()); - } - /** * DataIdentifier constructor comment. @@ -46,6 +41,12 @@ public DataIdentifier(String argName, VariableType argVariableType, Domain argDo displayName = argDisplayName; } +public static DataIdentifier dtoToDataIdentifier(org.vcell.restclient.model.DataIdentifier dto){ + return new DataIdentifier(dto.getName(), VariableType.dtoToVariableType(dto.getVariableType()), + dto.getDomain() == null ? null : Domain.dtoToDomain(dto.getDomain()), + dto.getbFunction() == null ? false : dto.getbFunction(), dto.getDisplayName()); +} + /** * Insert the method's description here. diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index b331993a76..99efa94155 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -17,12 +17,16 @@ import org.apache.commons.io.IOUtils; import org.vcell.restq.db.AgroalConnectionFactory; import org.vcell.util.DataAccessException; +import org.vcell.util.ObjectNotFoundException; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; import org.vcell.util.document.User; import java.io.*; import java.sql.SQLException; +import java.util.HashMap; +import java.util.Map; +import java.util.Vector; import java.util.zip.DataFormatException; @ApplicationScoped @@ -41,8 +45,20 @@ public FieldDataDBOperationResults copyNoConflict(User user, FieldDataDBOperatio return databaseServer.fieldDataDBOperation(user, spec); } - public FieldDataDBOperationResults getAllFieldData(User user, FieldDataDBOperationSpec spec) throws SQLException, DataAccessException { - return databaseServer.fieldDataDBOperation(user, spec); + public FieldDataResource.FieldDataReferences getAllFieldDataIDs(User user) throws SQLException, DataAccessException { + FieldDataDBOperationResults results = databaseServer.fieldDataDBOperation(user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)); + HashMap> extdataIDToSimRef = new HashMap<>(); + if (results.extdataIDAndSimRefH == null){ // there can be no simulation references, only file based field data + return new FieldDataResource.FieldDataReferences(results.extDataIDArr, results.extDataAnnotArr, extdataIDToSimRef); + } + for (Map.Entry> entry: results.extdataIDAndSimRefH.entrySet()){ + extdataIDToSimRef.put(entry.getKey().getKey().toString(), entry.getValue()); + } + return new FieldDataResource.FieldDataReferences(results.extDataIDArr, results.extDataAnnotArr, extdataIDToSimRef); + } + + public FieldDataFileOperationResults getFieldDataFromID(User user, String id, int jobParameter) throws ObjectNotFoundException { + return dataSetController.fieldDataFileOperation(FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec(new KeyValue(id), user, jobParameter)); } public FieldDataFileOperationSpec generateFieldDataFromFile(InputStream imageFile, String fileName) throws DataAccessException, ImageException, DataFormatException { diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index 8a49452d30..b16f4e4a27 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -5,6 +5,8 @@ import cbit.vcell.field.FieldDataDBOperationSpec; import cbit.vcell.field.io.FieldDataFileOperationResults; import cbit.vcell.field.io.FieldDataFileOperationSpec; +import cbit.vcell.math.VariableType; +import cbit.vcell.simdata.DataIdentifier; import io.quarkus.security.identity.SecurityIdentity; import jakarta.enterprise.context.RequestScoped; import jakarta.inject.Inject; @@ -28,6 +30,7 @@ import java.sql.SQLException; import java.util.HashMap; import java.util.Hashtable; +import java.util.Map; import java.util.Vector; import java.util.zip.DataFormatException; @@ -51,48 +54,56 @@ public FieldDataResource(FieldDataDB fieldDataDB, UserRestDB userRestDB){ @GET - @Operation(operationId = "getAllFieldData", summary = "Get all of the field data for that user.") - @Produces(MediaType.APPLICATION_JSON) - @Consumes(MediaType.APPLICATION_JSON) - public FieldDataExternalDataIDs getAllFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ - FieldDataDBOperationResults results = null; + @Path("IDs") + @Operation(operationId = "getAllFieldDataIDs", summary = "Get all of the ids used to identify, and retrieve field data.") + public FieldDataReferences getAllFieldData(){ try { - results = fieldDataDB.getAllFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + return fieldDataDB.getAllFieldDataIDs(userRestDB.getUserFromIdentity(securityIdentity)); } catch (SQLException e) { - throw new WebApplicationException("Can't retrieve field data.", 500); + throw new WebApplicationException("Can't retrieve field data ID's.", 500); } catch (DataAccessException e) { throw new WebApplicationException(e.getMessage(), 500); } - return new FieldDataResource.FieldDataExternalDataIDs(results.extDataIDArr, results.extDataAnnotArr, results.extdataIDAndSimRefH); } - @POST - @Path("/createFieldDataFromSimulation") - @Produces(MediaType.APPLICATION_JSON) - @Consumes(MediaType.APPLICATION_JSON) - @Operation(operationId = "createNewFieldDataFromSimulation", summary = "Create new field data from a simulation.") - public ExternalDataIdentifier submitNewFieldDataToDB(FieldDataDBOperationSpec fieldDataDBOperationSpec){ - FieldDataDBOperationResults results = null; + @GET + @Operation(operationId = "getFieldDataFromID", summary = "Get the field data from the selected field data ID.") + public FieldDataInfo getFieldDataFromID(String fieldDataID){ try { - results = fieldDataDB.saveNewFieldDataIntoDB(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); + FieldDataFileOperationResults results = fieldDataDB.getFieldDataFromID(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID, 0); + return new FieldDataInfo(results.extent, results.origin, results.iSize, results.dataIdentifierArr,results.times); } catch (DataAccessException e) { throw new WebApplicationException(e.getMessage(), 500); } - return results.extDataID; } - @POST - @Path("/createFieldDataFromFile") - @Produces(MediaType.APPLICATION_JSON) - @Consumes(MediaType.MULTIPART_FORM_DATA) - @Operation(operationId = "generateFieldDataEstimate") - public FieldDataFileOperationSpec generateFieldDataEstimate(FieldDataFile fieldDataFile){ - try{ - return fieldDataDB.generateFieldDataFromFile(fieldDataFile.file, fieldDataFile.fileName); - } catch (ImageException | DataFormatException | DataAccessException e) { - throw new WebApplicationException("Can't create new field data file", 500); - } - } +// @POST +// @Path("/createFieldDataFromSimulation") +// @Produces(MediaType.APPLICATION_JSON) +// @Consumes(MediaType.APPLICATION_JSON) +// @Operation(operationId = "createNewFieldDataFromSimulation", summary = "Create new field data from a simulation.") +// public ExternalDataIdentifier submitNewFieldDataToDB(FieldDataDBOperationSpec fieldDataDBOperationSpec){ +// FieldDataDBOperationResults results = null; +// try { +// results = fieldDataDB.saveNewFieldDataIntoDB(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); +// } catch (DataAccessException e) { +// throw new WebApplicationException(e.getMessage(), 500); +// } +// return results.extDataID; +// } + +// @POST +// @Path("/analyzeFieldDataFromFile") +// @Produces(MediaType.APPLICATION_JSON) +// @Consumes(MediaType.MULTIPART_FORM_DATA) +// @Operation(operationId = "generateFieldDataEstimate") +// public FieldDataFileOperationSpec generateFieldDataEstimate(FieldDataFile fieldDataFile){ +// try{ +// return fieldDataDB.generateFieldDataFromFile(fieldDataFile.file, fieldDataFile.fileName); +// } catch (ImageException | DataFormatException | DataAccessException e) { +// throw new WebApplicationException("Can't create new field data file", 500); +// } +// } @POST @Path("/createFieldDataFromFileAlreadyAnalyzed") @@ -111,20 +122,20 @@ public FieldDataSaveResults createNewFieldDataFromFile(AnalyzedResultsFromFieldD return fieldDataSaveResults; } - @POST - @Path("/copy") - @Produces(MediaType.APPLICATION_JSON) - @Consumes(MediaType.APPLICATION_JSON) - @Operation(operationId = "copyFieldData", summary = "Copy an existing field data entry.") - public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ - FieldDataDBOperationResults results = null; - try { - results = fieldDataDB.copyNoConflict(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); - } catch (DataAccessException e) { - throw new WebApplicationException(e.getMessage(), 500); - } - return new FieldDataNoCopyConflict(results.oldNameNewIDHash, results.oldNameOldExtDataIDKeyHash); - } +// @POST +// @Path("/copy") +// @Produces(MediaType.APPLICATION_JSON) +// @Consumes(MediaType.APPLICATION_JSON) +// @Operation(operationId = "copyFieldData", summary = "Copy an existing field data entry.") +// public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec){ +// FieldDataDBOperationResults results = null; +// try { +// results = fieldDataDB.copyNoConflict(userRestDB.getUserFromIdentity(securityIdentity), fieldDataDBOperationSpec); +// } catch (DataAccessException e) { +// throw new WebApplicationException(e.getMessage(), 500); +// } +// return new FieldDataNoCopyConflict(results.oldNameNewIDHash, results.oldNameOldExtDataIDKeyHash); +// } @DELETE @Operation(operationId = "deleteFieldData", summary = "Delete the selected field data.") @@ -136,16 +147,31 @@ public void deleteFieldData(String fieldDataID){ } } + public record FieldDataInfo( + Extent extent, + Origin origin, + ISize isize, + DataIdentifier[] dataIdentifier, + double[] times + ){ } + + public record DataID( + String name, + String displayName, + VariableType variableType, + String domainName, + boolean bFunction + ){ } public record FieldDataNoCopyConflict( Hashtable oldNameNewIDHash, Hashtable oldNameOldExtDataIDKeyHash ) { } - public record FieldDataExternalDataIDs( + public record FieldDataReferences( ExternalDataIdentifier[] externalDataIdentifiers, String[] externalDataAnnotations, - HashMap> externalDataIDSimRefs + Map> externalDataIDSimRefs ) { } public record AnalyzedResultsFromFieldData( diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 8704a537a4..76763f2910 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -10,13 +10,16 @@ docs/BioModelResourceApi.md docs/BiomodelRef.md docs/CartesianMesh.md docs/Coordinate.md +docs/DataIdentifier.md docs/DetailedState.md +docs/Domain.md docs/Extent.md docs/ExternalDataIdentifier.md docs/FieldDataDBOperationSpec.md -docs/FieldDataExternalDataIDs.md docs/FieldDataFileOperationSpec.md +docs/FieldDataInfo.md docs/FieldDataNoCopyConflict.md +docs/FieldDataReferences.md docs/FieldDataResourceApi.md docs/FieldDataSaveResults.md docs/GroupAccess.md @@ -78,13 +81,16 @@ src/main/java/org/vcell/restclient/model/BioModel.java src/main/java/org/vcell/restclient/model/BiomodelRef.java src/main/java/org/vcell/restclient/model/CartesianMesh.java src/main/java/org/vcell/restclient/model/Coordinate.java +src/main/java/org/vcell/restclient/model/DataIdentifier.java src/main/java/org/vcell/restclient/model/DetailedState.java +src/main/java/org/vcell/restclient/model/Domain.java src/main/java/org/vcell/restclient/model/Extent.java src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java -src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java +src/main/java/org/vcell/restclient/model/FieldDataInfo.java src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java +src/main/java/org/vcell/restclient/model/FieldDataReferences.java src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java src/main/java/org/vcell/restclient/model/GroupAccess.java src/main/java/org/vcell/restclient/model/HelloWorldMessage.java @@ -116,24 +122,5 @@ src/main/java/org/vcell/restclient/model/Version.java src/main/java/org/vcell/restclient/model/VersionFlag.java src/main/java/org/vcell/restclient/model/VersionableType.java src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java -src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java -src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java -src/test/java/org/vcell/restclient/model/CartesianMeshTest.java -src/test/java/org/vcell/restclient/model/CoordinateTest.java -src/test/java/org/vcell/restclient/model/ExtentTest.java -src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java -src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java -src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java -src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java -src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java -src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java -src/test/java/org/vcell/restclient/model/GroupAccessTest.java -src/test/java/org/vcell/restclient/model/ISizeTest.java -src/test/java/org/vcell/restclient/model/OriginTest.java -src/test/java/org/vcell/restclient/model/UCDInfoTest.java -src/test/java/org/vcell/restclient/model/VariableDomainTest.java -src/test/java/org/vcell/restclient/model/VariableTypeTest.java -src/test/java/org/vcell/restclient/model/VersionFlagTest.java -src/test/java/org/vcell/restclient/model/VersionTest.java -src/test/java/org/vcell/restclient/model/VersionableTypeTest.java -src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java +src/test/java/org/vcell/restclient/model/DataIdentifierTest.java +src/test/java/org/vcell/restclient/model/DomainTest.java diff --git a/vcell-restclient/README.md b/vcell-restclient/README.md index 0dad233058..61d18b2541 100644 --- a/vcell-restclient/README.md +++ b/vcell-restclient/README.md @@ -121,10 +121,12 @@ Class | Method | HTTP request | Description *FieldDataResourceApi* | [**createNewFieldDataFromSimulationWithHttpInfo**](docs/FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. *FieldDataResourceApi* | [**deleteFieldData**](docs/FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. *FieldDataResourceApi* | [**deleteFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. -*FieldDataResourceApi* | [**generateFieldDataEstimate**](docs/FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | -*FieldDataResourceApi* | [**generateFieldDataEstimateWithHttpInfo**](docs/FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFile | -*FieldDataResourceApi* | [**getAllFieldData**](docs/FieldDataResourceApi.md#getAllFieldData) | **GET** /api/v1/fieldData | Get all of the field data for that user. -*FieldDataResourceApi* | [**getAllFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#getAllFieldDataWithHttpInfo) | **GET** /api/v1/fieldData | Get all of the field data for that user. +*FieldDataResourceApi* | [**generateFieldDataEstimate**](docs/FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +*FieldDataResourceApi* | [**generateFieldDataEstimateWithHttpInfo**](docs/FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +*FieldDataResourceApi* | [**getAllFieldDataIDs**](docs/FieldDataResourceApi.md#getAllFieldDataIDs) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. +*FieldDataResourceApi* | [**getAllFieldDataIDsWithHttpInfo**](docs/FieldDataResourceApi.md#getAllFieldDataIDsWithHttpInfo) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. +*FieldDataResourceApi* | [**getFieldDataFromID**](docs/FieldDataResourceApi.md#getFieldDataFromID) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. +*FieldDataResourceApi* | [**getFieldDataFromIDWithHttpInfo**](docs/FieldDataResourceApi.md#getFieldDataFromIDWithHttpInfo) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. *HelloWorldApi* | [**getHelloWorld**](docs/HelloWorldApi.md#getHelloWorld) | **GET** /api/v1/helloworld | Get hello world message. *HelloWorldApi* | [**getHelloWorldWithHttpInfo**](docs/HelloWorldApi.md#getHelloWorldWithHttpInfo) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**createPublication**](docs/PublicationResourceApi.md#createPublication) | **POST** /api/v1/publications | Create publication @@ -174,13 +176,16 @@ Class | Method | HTTP request | Description - [BiomodelRef](docs/BiomodelRef.md) - [CartesianMesh](docs/CartesianMesh.md) - [Coordinate](docs/Coordinate.md) + - [DataIdentifier](docs/DataIdentifier.md) - [DetailedState](docs/DetailedState.md) + - [Domain](docs/Domain.md) - [Extent](docs/Extent.md) - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) - - [FieldDataExternalDataIDs](docs/FieldDataExternalDataIDs.md) - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) + - [FieldDataInfo](docs/FieldDataInfo.md) - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) + - [FieldDataReferences](docs/FieldDataReferences.md) - [FieldDataSaveResults](docs/FieldDataSaveResults.md) - [GroupAccess](docs/GroupAccess.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) diff --git a/vcell-restclient/api/openapi.yaml b/vcell-restclient/api/openapi.yaml index 5ca89f34f3..42d466a7f5 100644 --- a/vcell-restclient/api/openapi.yaml +++ b/vcell-restclient/api/openapi.yaml @@ -46,10 +46,10 @@ paths: schema: $ref: '#/components/schemas/SimulationStatusPersistentRecord' description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -77,10 +77,10 @@ paths: $ref: '#/components/schemas/StatusMessage' type: array description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -108,10 +108,10 @@ paths: $ref: '#/components/schemas/StatusMessage' type: array description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -149,10 +149,10 @@ paths: schema: type: string description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -219,45 +219,39 @@ paths: x-content-type: text/plain x-accepts: application/json get: - operationId: getAllFieldData + operationId: getFieldDataFromID requestBody: content: - application/json: + text/plain: schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + type: string responses: "200": content: application/json: schema: - $ref: '#/components/schemas/FieldDataExternalDataIDs' + $ref: '#/components/schemas/FieldDataInfo' description: OK - summary: Get all of the field data for that user. + summary: Get the field data from the selected field data ID. tags: - Field Data Resource - x-content-type: application/json + x-content-type: text/plain x-accepts: application/json - /api/v1/fieldData/copy: - post: - operationId: copyFieldData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + /api/v1/fieldData/IDs: + get: + operationId: getAllFieldDataIDs responses: "200": content: application/json: schema: - $ref: '#/components/schemas/FieldDataNoCopyConflict' + $ref: '#/components/schemas/FieldDataReferences' description: OK - summary: Copy an existing field data entry. + summary: "Get all of the ids used to identify, and retrieve field data." tags: - Field Data Resource - x-content-type: application/json x-accepts: application/json - /api/v1/fieldData/createFieldDataFromFile: + /api/v1/fieldData/analyzeFieldDataFromFile: post: operationId: generateFieldDataEstimate requestBody: @@ -276,6 +270,26 @@ paths: - Field Data Resource x-content-type: multipart/form-data x-accepts: application/json + /api/v1/fieldData/copy: + post: + operationId: copyFieldData + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataDBOperationSpec' + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FieldDataNoCopyConflict' + description: OK + summary: Copy an existing field data entry. + tags: + - Field Data Resource + x-content-type: application/json + x-accepts: application/json /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: post: operationId: createNewFieldDataFromFileAlreadyAnalyzed @@ -435,10 +449,10 @@ paths: schema: $ref: '#/components/schemas/AccesTokenRepresentationRecord' description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -503,10 +517,10 @@ paths: schema: type: boolean description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -525,10 +539,10 @@ paths: schema: $ref: '#/components/schemas/UserIdentityJSONSafe' description: "Successful, returning the identity" - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -563,10 +577,10 @@ paths: description: "Successful, returning the identity" "409": description: "VCell Identity not mapped, userid already exists" - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -618,10 +632,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -647,10 +661,10 @@ paths: schema: type: boolean description: OK - "401": - description: Not Authorized "403": description: Not Allowed + "401": + description: Not Authorized security: - openId: - user @@ -684,22 +698,22 @@ components: AnalyzedResultsFromFieldData: example: extent: - x: 6.704019297950036 - "y": 3.353193347011243 - z: 3.0937452626664474 + x: 0.8008281904610115 + "y": 6.027456183070403 + z: 1.4658129805029452 annotation: annotation times: - 6.027456183070403 - 6.027456183070403 origin: - x: 6.778324963048013 - "y": 6.878052220127876 - z: 5.944895607614016 + x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 isize: - x: 9 - xYZ: 9 - "y": 6 - z: 8 + x: 7 + xYZ: 2 + "y": 9 + z: 3 name: name varNames: - varNames @@ -829,10 +843,10 @@ components: CartesianMesh: example: iSize: - x: 9 - xYZ: 9 - "y": 6 - z: 8 + x: 7 + xYZ: 2 + "y": 9 + z: 3 chomboMesh: true uCDInfo: numPointsXYZ: 7 @@ -914,7 +928,7 @@ components: outputFields: - "" - "" - sizeX: 6 + sizeX: 9 membraneRegionMapSubvolumesInOut: key: "" numVolumeRegions: 9 @@ -924,8 +938,8 @@ components: compressedBytes: "" volumeRegionMapSubvolume: key: 7 - sizeY: 3 - sizeZ: 6 + sizeY: 6 + sizeZ: 8 properties: compressedBytes: format: binary @@ -990,6 +1004,41 @@ components: format: double type: number type: object + DataIdentifier: + example: + variableType: + defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 4 + variableDomain: null + legacyWarn: true + visible: true + displayName: displayName + bFunction: true + domain: + name: name + function: true + name: name + properties: + name: + type: string + displayName: + type: string + variableType: + $ref: '#/components/schemas/VariableType' + domain: + $ref: '#/components/schemas/Domain' + bFunction: + type: boolean + function: + type: boolean + visible: + type: boolean + type: object Date: example: 2022-03-10 format: date @@ -1047,11 +1096,18 @@ components: - WORKEREVENT_FAILURE - JOB_FAILED type: string + Domain: + example: + name: name + properties: + name: + type: string + type: object Extent: example: - x: 6.704019297950036 - "y": 3.353193347011243 - z: 3.0937452626664474 + x: 0.8008281904610115 + "y": 6.027456183070403 + z: 1.4658129805029452 properties: x: format: double @@ -1224,68 +1280,6 @@ components: bIncludeSimRefs: type: boolean type: object - FieldDataExternalDataIDs: - example: - externalDataIdentifiers: - - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - externalDataAnnotations: - - externalDataAnnotations - - externalDataAnnotations - externalDataIDSimRefs: - key: - - value: 0.8008281904610115 - - value: 0.8008281904610115 - properties: - externalDataIdentifiers: - items: - $ref: '#/components/schemas/ExternalDataIdentifier' - type: array - externalDataAnnotations: - items: - type: string - type: array - externalDataIDSimRefs: - additionalProperties: - items: - $ref: '#/components/schemas/KeyValue' - type: array - type: object - type: object FieldDataFile: properties: file: @@ -1305,9 +1299,9 @@ components: key: value: 0.8008281904610115 extent: - x: 6.704019297950036 - "y": 3.353193347011243 - z: 3.0937452626664474 + x: 0.8008281904610115 + "y": 6.027456183070403 + z: 1.4658129805029452 annotation: annotation variableTypes: - defaultUnits: defaultUnits @@ -1316,7 +1310,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 1 + type: 4 variableDomain: null legacyWarn: true - defaultUnits: defaultUnits @@ -1325,7 +1319,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 1 + type: 4 variableDomain: null legacyWarn: true doubleSpecData: @@ -1358,9 +1352,9 @@ components: value: 0.8008281904610115 parameterScanType: true origin: - x: 6.778324963048013 - "y": 6.878052220127876 - z: 5.944895607614016 + x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 varNames: - varNames - varNames @@ -1381,24 +1375,24 @@ components: - 6 - - 6 - 6 - sourceSimParamScanJobIndex: 7 + sourceSimParamScanJobIndex: 6 times: - - 2.8841621266687802 - - 2.8841621266687802 + - 9.018348186070783 + - 9.018348186070783 fieldDataName: fieldDataName sourceSimDataKey: value: 0.8008281904610115 isize: - x: 9 - xYZ: 9 - "y": 6 - z: 8 + x: 7 + xYZ: 2 + "y": 9 + z: 3 cartesianMesh: iSize: - x: 9 - xYZ: 9 - "y": 6 - z: 8 + x: 7 + xYZ: 2 + "y": 9 + z: 3 chomboMesh: true uCDInfo: numPointsXYZ: 7 @@ -1480,7 +1474,7 @@ components: outputFields: - "" - "" - sizeX: 6 + sizeX: 9 membraneRegionMapSubvolumesInOut: key: "" numVolumeRegions: 9 @@ -1490,8 +1484,8 @@ components: compressedBytes: "" volumeRegionMapSubvolume: key: 7 - sizeY: 3 - sizeZ: 6 + sizeY: 6 + sizeZ: 8 properties: opType: format: int32 @@ -1550,6 +1544,76 @@ components: fieldDataName: type: string type: object + FieldDataInfo: + example: + extent: + x: 0.8008281904610115 + "y": 6.027456183070403 + z: 1.4658129805029452 + times: + - 7.386281948385884 + - 7.386281948385884 + origin: + x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 + isize: + x: 7 + xYZ: 2 + "y": 9 + z: 3 + dataIdentifier: + - variableType: + defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 4 + variableDomain: null + legacyWarn: true + visible: true + displayName: displayName + bFunction: true + domain: + name: name + function: true + name: name + - variableType: + defaultUnits: defaultUnits + name: name + typeName: typeName + defaultLabel: defaultLabel + units: units + label: label + type: 4 + variableDomain: null + legacyWarn: true + visible: true + displayName: displayName + bFunction: true + domain: + name: name + function: true + name: name + properties: + extent: + $ref: '#/components/schemas/Extent' + origin: + $ref: '#/components/schemas/Origin' + isize: + $ref: '#/components/schemas/ISize' + dataIdentifier: + items: + $ref: '#/components/schemas/DataIdentifier' + type: array + times: + items: + format: double + type: number + type: array + type: object FieldDataNoCopyConflict: example: oldNameOldExtDataIDKeyHash: @@ -1585,6 +1649,68 @@ components: $ref: '#/components/schemas/KeyValue' type: object type: object + FieldDataReferences: + example: + externalDataIdentifiers: + - owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + - owner: + testAccount: true + name: name + iD: + value: 0.8008281904610115 + userName: userName + key: + value: 0.8008281904610115 + dataKey: + value: 0.8008281904610115 + simulationKey: + value: 0.8008281904610115 + jobIndex: 0 + name: name + iD: iD + key: + value: 0.8008281904610115 + parameterScanType: true + externalDataAnnotations: + - externalDataAnnotations + - externalDataAnnotations + externalDataIDSimRefs: + key: + - value: 0.8008281904610115 + - value: 0.8008281904610115 + properties: + externalDataIdentifiers: + items: + $ref: '#/components/schemas/ExternalDataIdentifier' + type: array + externalDataAnnotations: + items: + type: string + type: array + externalDataIDSimRefs: + additionalProperties: + items: + $ref: '#/components/schemas/KeyValue' + type: array + type: object + type: object FieldDataSaveResults: example: fieldDataName: fieldDataName @@ -1628,10 +1754,10 @@ components: type: object ISize: example: - x: 9 - xYZ: 9 - "y": 6 - z: 8 + x: 7 + xYZ: 2 + "y": 9 + z: 3 properties: x: format: int32 @@ -1709,9 +1835,9 @@ components: type: object Origin: example: - x: 6.778324963048013 - "y": 6.878052220127876 - z: 5.944895607614016 + x: 5.962133916683182 + "y": 5.637376656633329 + z: 2.3021358869347655 properties: x: format: double @@ -2285,7 +2411,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 1 + type: 4 variableDomain: null legacyWarn: true properties: diff --git a/vcell-restclient/docs/BioModelResourceApi.md b/vcell-restclient/docs/BioModelResourceApi.md index b2569706e5..c8041e9297 100644 --- a/vcell-restclient/docs/BioModelResourceApi.md +++ b/vcell-restclient/docs/BioModelResourceApi.md @@ -337,8 +337,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## uploadBioModelWithHttpInfo @@ -407,6 +407,6 @@ ApiResponse<**String**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | diff --git a/vcell-restclient/docs/DataIdentifier.md b/vcell-restclient/docs/DataIdentifier.md new file mode 100644 index 0000000000..05492fc09f --- /dev/null +++ b/vcell-restclient/docs/DataIdentifier.md @@ -0,0 +1,19 @@ + + +# DataIdentifier + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**name** | **String** | | [optional] | +|**displayName** | **String** | | [optional] | +|**variableType** | [**VariableType**](VariableType.md) | | [optional] | +|**domain** | [**Domain**](Domain.md) | | [optional] | +|**bFunction** | **Boolean** | | [optional] | +|**function** | **Boolean** | | [optional] | +|**visible** | **Boolean** | | [optional] | + + + diff --git a/vcell-restclient/docs/Domain.md b/vcell-restclient/docs/Domain.md new file mode 100644 index 0000000000..6c23698b2f --- /dev/null +++ b/vcell-restclient/docs/Domain.md @@ -0,0 +1,13 @@ + + +# Domain + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**name** | **String** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataInfo.md b/vcell-restclient/docs/FieldDataInfo.md new file mode 100644 index 0000000000..33a2c58321 --- /dev/null +++ b/vcell-restclient/docs/FieldDataInfo.md @@ -0,0 +1,17 @@ + + +# FieldDataInfo + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**extent** | [**Extent**](Extent.md) | | [optional] | +|**origin** | [**Origin**](Origin.md) | | [optional] | +|**isize** | [**ISize**](ISize.md) | | [optional] | +|**dataIdentifier** | [**List<DataIdentifier>**](DataIdentifier.md) | | [optional] | +|**times** | **List<Double>** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataReferences.md b/vcell-restclient/docs/FieldDataReferences.md new file mode 100644 index 0000000000..31b2267473 --- /dev/null +++ b/vcell-restclient/docs/FieldDataReferences.md @@ -0,0 +1,15 @@ + + +# FieldDataReferences + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**externalDataIdentifiers** | [**List<ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | +|**externalDataAnnotations** | **List<String>** | | [optional] | +|**externalDataIDSimRefs** | **Map<String, List<KeyValue>>** | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataResourceApi.md b/vcell-restclient/docs/FieldDataResourceApi.md index 5c94f60a88..494855dbce 100644 --- a/vcell-restclient/docs/FieldDataResourceApi.md +++ b/vcell-restclient/docs/FieldDataResourceApi.md @@ -12,10 +12,12 @@ All URIs are relative to *https://vcell-dev.cam.uchc.edu* | [**createNewFieldDataFromSimulationWithHttpInfo**](FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. | | [**deleteFieldData**](FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. | | [**deleteFieldDataWithHttpInfo**](FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. | -| [**generateFieldDataEstimate**](FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/createFieldDataFromFile | | -| [**generateFieldDataEstimateWithHttpInfo**](FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFile | | -| [**getAllFieldData**](FieldDataResourceApi.md#getAllFieldData) | **GET** /api/v1/fieldData | Get all of the field data for that user. | -| [**getAllFieldDataWithHttpInfo**](FieldDataResourceApi.md#getAllFieldDataWithHttpInfo) | **GET** /api/v1/fieldData | Get all of the field data for that user. | +| [**generateFieldDataEstimate**](FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | | +| [**generateFieldDataEstimateWithHttpInfo**](FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | | +| [**getAllFieldDataIDs**](FieldDataResourceApi.md#getAllFieldDataIDs) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. | +| [**getAllFieldDataIDsWithHttpInfo**](FieldDataResourceApi.md#getAllFieldDataIDsWithHttpInfo) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. | +| [**getFieldDataFromID**](FieldDataResourceApi.md#getFieldDataFromID) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. | +| [**getFieldDataFromIDWithHttpInfo**](FieldDataResourceApi.md#getFieldDataFromIDWithHttpInfo) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. | @@ -671,11 +673,11 @@ No authorization required | **200** | OK | - | -## getAllFieldData +## getAllFieldDataIDs -> FieldDataExternalDataIDs getAllFieldData(fieldDataDBOperationSpec) +> FieldDataReferences getAllFieldDataIDs() -Get all of the field data for that user. +Get all of the ids used to identify, and retrieve field data. ### Example @@ -693,12 +695,134 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | try { - FieldDataExternalDataIDs result = apiInstance.getAllFieldData(fieldDataDBOperationSpec); + FieldDataReferences result = apiInstance.getAllFieldDataIDs(); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#getAllFieldDataIDs"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**FieldDataReferences**](FieldDataReferences.md) + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +## getAllFieldDataIDsWithHttpInfo + +> ApiResponse getAllFieldDataIDs getAllFieldDataIDsWithHttpInfo() + +Get all of the ids used to identify, and retrieve field data. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.ApiResponse; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + try { + ApiResponse response = apiInstance.getAllFieldDataIDsWithHttpInfo(); + System.out.println("Status code: " + response.getStatusCode()); + System.out.println("Response headers: " + response.getHeaders()); + System.out.println("Response body: " + response.getData()); + } catch (ApiException e) { + System.err.println("Exception when calling FieldDataResourceApi#getAllFieldDataIDs"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +ApiResponse<[**FieldDataReferences**](FieldDataReferences.md)> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + + +## getFieldDataFromID + +> FieldDataInfo getFieldDataFromID(body) + +Get the field data from the selected field data ID. + +### Example + +```java +// Import classes: +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.Configuration; +import org.vcell.restclient.models.*; +import org.vcell.restclient.api.FieldDataResourceApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); + + FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); + String body = "body_example"; // String | + try { + FieldDataInfo result = apiInstance.getFieldDataFromID(body); System.out.println(result); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#getAllFieldData"); + System.err.println("Exception when calling FieldDataResourceApi#getFieldDataFromID"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); @@ -713,11 +837,11 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | +| **body** | **String**| | [optional] | ### Return type -[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md) +[**FieldDataInfo**](FieldDataInfo.md) ### Authorization @@ -726,7 +850,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: application/json +- **Content-Type**: text/plain - **Accept**: application/json ### HTTP response details @@ -734,11 +858,11 @@ No authorization required |-------------|-------------|------------------| | **200** | OK | - | -## getAllFieldDataWithHttpInfo +## getFieldDataFromIDWithHttpInfo -> ApiResponse getAllFieldData getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec) +> ApiResponse getFieldDataFromID getFieldDataFromIDWithHttpInfo(body) -Get all of the field data for that user. +Get the field data from the selected field data ID. ### Example @@ -757,14 +881,14 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + String body = "body_example"; // String | try { - ApiResponse response = apiInstance.getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec); + ApiResponse response = apiInstance.getFieldDataFromIDWithHttpInfo(body); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); System.out.println("Response body: " + response.getData()); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#getAllFieldData"); + System.err.println("Exception when calling FieldDataResourceApi#getFieldDataFromID"); System.err.println("Status code: " + e.getCode()); System.err.println("Response headers: " + e.getResponseHeaders()); System.err.println("Reason: " + e.getResponseBody()); @@ -779,11 +903,11 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | +| **body** | **String**| | [optional] | ### Return type -ApiResponse<[**FieldDataExternalDataIDs**](FieldDataExternalDataIDs.md)> +ApiResponse<[**FieldDataInfo**](FieldDataInfo.md)> ### Authorization @@ -792,7 +916,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: application/json +- **Content-Type**: text/plain - **Accept**: application/json ### HTTP response details diff --git a/vcell-restclient/docs/SimulationResourceApi.md b/vcell-restclient/docs/SimulationResourceApi.md index 1b3a3c3c5e..934d319186 100644 --- a/vcell-restclient/docs/SimulationResourceApi.md +++ b/vcell-restclient/docs/SimulationResourceApi.md @@ -81,8 +81,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## getSimulationStatusWithHttpInfo @@ -155,8 +155,8 @@ ApiResponse<[**SimulationStatusPersistentRecord**](SimulationStatusPersistentRec | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## startSimulation @@ -223,8 +223,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## startSimulationWithHttpInfo @@ -293,8 +293,8 @@ ApiResponse<[**List<StatusMessage>**](StatusMessage.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## stopSimulation @@ -361,8 +361,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## stopSimulationWithHttpInfo @@ -431,6 +431,6 @@ ApiResponse<[**List<StatusMessage>**](StatusMessage.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | diff --git a/vcell-restclient/docs/UsersResourceApi.md b/vcell-restclient/docs/UsersResourceApi.md index 831c4b98c6..d265979677 100644 --- a/vcell-restclient/docs/UsersResourceApi.md +++ b/vcell-restclient/docs/UsersResourceApi.md @@ -347,8 +347,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## getLegacyApiTokenWithHttpInfo @@ -413,8 +413,8 @@ ApiResponse<[**AccesTokenRepresentationRecord**](AccesTokenRepresentationRecord. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## getMappedUser @@ -477,8 +477,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## getMappedUserWithHttpInfo @@ -543,8 +543,8 @@ ApiResponse<[**UserIdentityJSONSafe**](UserIdentityJSONSafe.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## getMe @@ -733,8 +733,8 @@ null (empty response body) |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | | **409** | VCell Identity not mapped, userid already exists | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## mapNewUserWithHttpInfo @@ -803,8 +803,8 @@ ApiResponse |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | | **409** | VCell Identity not mapped, userid already exists | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## mapUser @@ -871,8 +871,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## mapUserWithHttpInfo @@ -941,8 +941,8 @@ ApiResponse<**Boolean**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## processMagicLink @@ -1141,8 +1141,8 @@ null (empty response body) |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## requestRecoveryEmailWithHttpInfo @@ -1213,8 +1213,8 @@ ApiResponse |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## unmapUser @@ -1281,8 +1281,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | ## unmapUserWithHttpInfo @@ -1351,6 +1351,6 @@ ApiResponse<**Boolean**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **401** | Not Authorized | - | | **403** | Not Allowed | - | +| **401** | Not Authorized | - | diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java index dce0628f5d..10a6c6b4e5 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java @@ -20,9 +20,10 @@ import org.vcell.restclient.model.AnalyzedResultsFromFieldData; import org.vcell.restclient.model.ExternalDataIdentifier; import org.vcell.restclient.model.FieldDataDBOperationSpec; -import org.vcell.restclient.model.FieldDataExternalDataIDs; import org.vcell.restclient.model.FieldDataFileOperationSpec; +import org.vcell.restclient.model.FieldDataInfo; import org.vcell.restclient.model.FieldDataNoCopyConflict; +import org.vcell.restclient.model.FieldDataReferences; import org.vcell.restclient.model.FieldDataSaveResults; import java.io.File; @@ -438,7 +439,7 @@ private HttpRequest.Builder generateFieldDataEstimateRequestBuilder(File _file, HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData/createFieldDataFromFile"; + String localVarPath = "/api/v1/fieldData/analyzeFieldDataFromFile"; localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); @@ -488,26 +489,24 @@ private HttpRequest.Builder generateFieldDataEstimateRequestBuilder(File _file, return localVarRequestBuilder; } /** - * Get all of the field data for that user. + * Get all of the ids used to identify, and retrieve field data. * - * @param fieldDataDBOperationSpec (optional) - * @return FieldDataExternalDataIDs + * @return FieldDataReferences * @throws ApiException if fails to make API call */ - public FieldDataExternalDataIDs getAllFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - ApiResponse localVarResponse = getAllFieldDataWithHttpInfo(fieldDataDBOperationSpec); + public FieldDataReferences getAllFieldDataIDs() throws ApiException { + ApiResponse localVarResponse = getAllFieldDataIDsWithHttpInfo(); return localVarResponse.getData(); } /** - * Get all of the field data for that user. + * Get all of the ids used to identify, and retrieve field data. * - * @param fieldDataDBOperationSpec (optional) - * @return ApiResponse<FieldDataExternalDataIDs> + * @return ApiResponse<FieldDataReferences> * @throws ApiException if fails to make API call */ - public ApiResponse getAllFieldDataWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = getAllFieldDataRequestBuilder(fieldDataDBOperationSpec); + public ApiResponse getAllFieldDataIDsWithHttpInfo() throws ApiException { + HttpRequest.Builder localVarRequestBuilder = getAllFieldDataIDsRequestBuilder(); try { HttpResponse localVarResponse = memberVarHttpClient.send( localVarRequestBuilder.build(), @@ -517,12 +516,12 @@ public ApiResponse getAllFieldDataWithHttpInfo(FieldDa } try { if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("getAllFieldData", localVarResponse); + throw getApiException("getAllFieldDataIDs", localVarResponse); } - return new ApiResponse( + return new ApiResponse( localVarResponse.statusCode(), localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream ); } finally { } @@ -535,23 +534,85 @@ public ApiResponse getAllFieldDataWithHttpInfo(FieldDa } } - private HttpRequest.Builder getAllFieldDataRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + private HttpRequest.Builder getAllFieldDataIDsRequestBuilder() throws ApiException { HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData"; + String localVarPath = "/api/v1/fieldData/IDs"; localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); - localVarRequestBuilder.header("Content-Type", "application/json"); localVarRequestBuilder.header("Accept", "application/json"); + localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.noBody()); + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * Get the field data from the selected field data ID. + * + * @param body (optional) + * @return FieldDataInfo + * @throws ApiException if fails to make API call + */ + public FieldDataInfo getFieldDataFromID(String body) throws ApiException { + ApiResponse localVarResponse = getFieldDataFromIDWithHttpInfo(body); + return localVarResponse.getData(); + } + + /** + * Get the field data from the selected field data ID. + * + * @param body (optional) + * @return ApiResponse<FieldDataInfo> + * @throws ApiException if fails to make API call + */ + public ApiResponse getFieldDataFromIDWithHttpInfo(String body) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = getFieldDataFromIDRequestBuilder(body); try { - byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); - localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + HttpResponse localVarResponse = memberVarHttpClient.send( + localVarRequestBuilder.build(), + HttpResponse.BodyHandlers.ofInputStream()); + if (memberVarResponseInterceptor != null) { + memberVarResponseInterceptor.accept(localVarResponse); + } + try { + if (localVarResponse.statusCode()/ 100 != 2) { + throw getApiException("getFieldDataFromID", localVarResponse); + } + return new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + ); + } finally { + } } catch (IOException e) { throw new ApiException(e); } + catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new ApiException(e); + } + } + + private HttpRequest.Builder getFieldDataFromIDRequestBuilder(String body) throws ApiException { + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/api/v1/fieldData"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Content-Type", "text/plain"); + localVarRequestBuilder.header("Accept", "application/json"); + + localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.ofString(body)); if (memberVarReadTimeout != null) { localVarRequestBuilder.timeout(memberVarReadTimeout); } diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/AccessTokenRepresentation.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/AccessTokenRepresentation.java deleted file mode 100644 index 8df8742129..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/AccessTokenRepresentation.java +++ /dev/null @@ -1,294 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * AccessTokenRepresentation - */ -@JsonPropertyOrder({ - AccessTokenRepresentation.JSON_PROPERTY_TOKEN, - AccessTokenRepresentation.JSON_PROPERTY_CREATION_DATE_SECONDS, - AccessTokenRepresentation.JSON_PROPERTY_EXPIRE_DATE_SECONDS, - AccessTokenRepresentation.JSON_PROPERTY_USER_ID, - AccessTokenRepresentation.JSON_PROPERTY_USER_KEY -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class AccessTokenRepresentation { - public static final String JSON_PROPERTY_TOKEN = "token"; - private String token; - - public static final String JSON_PROPERTY_CREATION_DATE_SECONDS = "creationDateSeconds"; - private Long creationDateSeconds; - - public static final String JSON_PROPERTY_EXPIRE_DATE_SECONDS = "expireDateSeconds"; - private Long expireDateSeconds; - - public static final String JSON_PROPERTY_USER_ID = "userId"; - private String userId; - - public static final String JSON_PROPERTY_USER_KEY = "userKey"; - private String userKey; - - public AccessTokenRepresentation() { - } - - public AccessTokenRepresentation token(String token) { - this.token = token; - return this; - } - - /** - * Get token - * @return token - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TOKEN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getToken() { - return token; - } - - - @JsonProperty(JSON_PROPERTY_TOKEN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setToken(String token) { - this.token = token; - } - - - public AccessTokenRepresentation creationDateSeconds(Long creationDateSeconds) { - this.creationDateSeconds = creationDateSeconds; - return this; - } - - /** - * Get creationDateSeconds - * @return creationDateSeconds - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CREATION_DATE_SECONDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Long getCreationDateSeconds() { - return creationDateSeconds; - } - - - @JsonProperty(JSON_PROPERTY_CREATION_DATE_SECONDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCreationDateSeconds(Long creationDateSeconds) { - this.creationDateSeconds = creationDateSeconds; - } - - - public AccessTokenRepresentation expireDateSeconds(Long expireDateSeconds) { - this.expireDateSeconds = expireDateSeconds; - return this; - } - - /** - * Get expireDateSeconds - * @return expireDateSeconds - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXPIRE_DATE_SECONDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Long getExpireDateSeconds() { - return expireDateSeconds; - } - - - @JsonProperty(JSON_PROPERTY_EXPIRE_DATE_SECONDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExpireDateSeconds(Long expireDateSeconds) { - this.expireDateSeconds = expireDateSeconds; - } - - - public AccessTokenRepresentation userId(String userId) { - this.userId = userId; - return this; - } - - /** - * Get userId - * @return userId - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_USER_ID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getUserId() { - return userId; - } - - - @JsonProperty(JSON_PROPERTY_USER_ID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUserId(String userId) { - this.userId = userId; - } - - - public AccessTokenRepresentation userKey(String userKey) { - this.userKey = userKey; - return this; - } - - /** - * Get userKey - * @return userKey - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_USER_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getUserKey() { - return userKey; - } - - - @JsonProperty(JSON_PROPERTY_USER_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUserKey(String userKey) { - this.userKey = userKey; - } - - - /** - * Return true if this AccessTokenRepresentation object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - AccessTokenRepresentation accessTokenRepresentation = (AccessTokenRepresentation) o; - return Objects.equals(this.token, accessTokenRepresentation.token) && - Objects.equals(this.creationDateSeconds, accessTokenRepresentation.creationDateSeconds) && - Objects.equals(this.expireDateSeconds, accessTokenRepresentation.expireDateSeconds) && - Objects.equals(this.userId, accessTokenRepresentation.userId) && - Objects.equals(this.userKey, accessTokenRepresentation.userKey); - } - - @Override - public int hashCode() { - return Objects.hash(token, creationDateSeconds, expireDateSeconds, userId, userKey); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class AccessTokenRepresentation {\n"); - sb.append(" token: ").append(toIndentedString(token)).append("\n"); - sb.append(" creationDateSeconds: ").append(toIndentedString(creationDateSeconds)).append("\n"); - sb.append(" expireDateSeconds: ").append(toIndentedString(expireDateSeconds)).append("\n"); - sb.append(" userId: ").append(toIndentedString(userId)).append("\n"); - sb.append(" userKey: ").append(toIndentedString(userKey)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `token` to the URL query string - if (getToken() != null) { - joiner.add(String.format("%stoken%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getToken()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `creationDateSeconds` to the URL query string - if (getCreationDateSeconds() != null) { - joiner.add(String.format("%screationDateSeconds%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCreationDateSeconds()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `expireDateSeconds` to the URL query string - if (getExpireDateSeconds() != null) { - joiner.add(String.format("%sexpireDateSeconds%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getExpireDateSeconds()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `userId` to the URL query string - if (getUserId() != null) { - joiner.add(String.format("%suserId%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUserId()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `userKey` to the URL query string - if (getUserKey() != null) { - joiner.add(String.format("%suserKey%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUserKey()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/DataIdentifier.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/DataIdentifier.java new file mode 100644 index 0000000000..15e202a03d --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/DataIdentifier.java @@ -0,0 +1,368 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.Domain; +import org.vcell.restclient.model.VariableType; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * DataIdentifier + */ +@JsonPropertyOrder({ + DataIdentifier.JSON_PROPERTY_NAME, + DataIdentifier.JSON_PROPERTY_DISPLAY_NAME, + DataIdentifier.JSON_PROPERTY_VARIABLE_TYPE, + DataIdentifier.JSON_PROPERTY_DOMAIN, + DataIdentifier.JSON_PROPERTY_B_FUNCTION, + DataIdentifier.JSON_PROPERTY_FUNCTION, + DataIdentifier.JSON_PROPERTY_VISIBLE +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class DataIdentifier { + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_DISPLAY_NAME = "displayName"; + private String displayName; + + public static final String JSON_PROPERTY_VARIABLE_TYPE = "variableType"; + private VariableType variableType; + + public static final String JSON_PROPERTY_DOMAIN = "domain"; + private Domain domain; + + public static final String JSON_PROPERTY_B_FUNCTION = "bFunction"; + private Boolean bFunction; + + public static final String JSON_PROPERTY_FUNCTION = "function"; + private Boolean function; + + public static final String JSON_PROPERTY_VISIBLE = "visible"; + private Boolean visible; + + public DataIdentifier() { + } + + public DataIdentifier name(String name) { + this.name = name; + return this; + } + + /** + * Get name + * @return name + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getName() { + return name; + } + + + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setName(String name) { + this.name = name; + } + + + public DataIdentifier displayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** + * Get displayName + * @return displayName + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DISPLAY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getDisplayName() { + return displayName; + } + + + @JsonProperty(JSON_PROPERTY_DISPLAY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDisplayName(String displayName) { + this.displayName = displayName; + } + + + public DataIdentifier variableType(VariableType variableType) { + this.variableType = variableType; + return this; + } + + /** + * Get variableType + * @return variableType + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VARIABLE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public VariableType getVariableType() { + return variableType; + } + + + @JsonProperty(JSON_PROPERTY_VARIABLE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVariableType(VariableType variableType) { + this.variableType = variableType; + } + + + public DataIdentifier domain(Domain domain) { + this.domain = domain; + return this; + } + + /** + * Get domain + * @return domain + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DOMAIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Domain getDomain() { + return domain; + } + + + @JsonProperty(JSON_PROPERTY_DOMAIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDomain(Domain domain) { + this.domain = domain; + } + + + public DataIdentifier bFunction(Boolean bFunction) { + this.bFunction = bFunction; + return this; + } + + /** + * Get bFunction + * @return bFunction + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_B_FUNCTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getbFunction() { + return bFunction; + } + + + @JsonProperty(JSON_PROPERTY_B_FUNCTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setbFunction(Boolean bFunction) { + this.bFunction = bFunction; + } + + + public DataIdentifier function(Boolean function) { + this.function = function; + return this; + } + + /** + * Get function + * @return function + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_FUNCTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getFunction() { + return function; + } + + + @JsonProperty(JSON_PROPERTY_FUNCTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setFunction(Boolean function) { + this.function = function; + } + + + public DataIdentifier visible(Boolean visible) { + this.visible = visible; + return this; + } + + /** + * Get visible + * @return visible + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VISIBLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Boolean getVisible() { + return visible; + } + + + @JsonProperty(JSON_PROPERTY_VISIBLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVisible(Boolean visible) { + this.visible = visible; + } + + + /** + * Return true if this DataIdentifier object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DataIdentifier dataIdentifier = (DataIdentifier) o; + return Objects.equals(this.name, dataIdentifier.name) && + Objects.equals(this.displayName, dataIdentifier.displayName) && + Objects.equals(this.variableType, dataIdentifier.variableType) && + Objects.equals(this.domain, dataIdentifier.domain) && + Objects.equals(this.bFunction, dataIdentifier.bFunction) && + Objects.equals(this.function, dataIdentifier.function) && + Objects.equals(this.visible, dataIdentifier.visible); + } + + @Override + public int hashCode() { + return Objects.hash(name, displayName, variableType, domain, bFunction, function, visible); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class DataIdentifier {\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" displayName: ").append(toIndentedString(displayName)).append("\n"); + sb.append(" variableType: ").append(toIndentedString(variableType)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" bFunction: ").append(toIndentedString(bFunction)).append("\n"); + sb.append(" function: ").append(toIndentedString(function)).append("\n"); + sb.append(" visible: ").append(toIndentedString(visible)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `name` to the URL query string + if (getName() != null) { + joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `displayName` to the URL query string + if (getDisplayName() != null) { + joiner.add(String.format("%sdisplayName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDisplayName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `variableType` to the URL query string + if (getVariableType() != null) { + joiner.add(getVariableType().toUrlQueryString(prefix + "variableType" + suffix)); + } + + // add `domain` to the URL query string + if (getDomain() != null) { + joiner.add(getDomain().toUrlQueryString(prefix + "domain" + suffix)); + } + + // add `bFunction` to the URL query string + if (getbFunction() != null) { + joiner.add(String.format("%sbFunction%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getbFunction()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `function` to the URL query string + if (getFunction() != null) { + joiner.add(String.format("%sfunction%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFunction()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `visible` to the URL query string + if (getVisible() != null) { + joiner.add(String.format("%svisible%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVisible()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Simulation.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Domain.java similarity index 90% rename from vcell-restclient/src/main/java/org/vcell/restclient/model/Simulation.java rename to vcell-restclient/src/main/java/org/vcell/restclient/model/Domain.java index 473dbe6f09..33b401f2d6 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/Simulation.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/Domain.java @@ -29,20 +29,20 @@ /** - * Simulation + * Domain */ @JsonPropertyOrder({ - Simulation.JSON_PROPERTY_NAME + Domain.JSON_PROPERTY_NAME }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class Simulation { +public class Domain { public static final String JSON_PROPERTY_NAME = "name"; private String name; - public Simulation() { + public Domain() { } - public Simulation name(String name) { + public Domain name(String name) { this.name = name; return this; } @@ -68,7 +68,7 @@ public void setName(String name) { /** - * Return true if this Simulation object is equal to o. + * Return true if this Domain object is equal to o. */ @Override public boolean equals(Object o) { @@ -78,8 +78,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - Simulation simulation = (Simulation) o; - return Objects.equals(this.name, simulation.name); + Domain domain = (Domain) o; + return Objects.equals(this.name, domain.name); } @Override @@ -90,7 +90,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class Simulation {\n"); + sb.append("class Domain {\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java new file mode 100644 index 0000000000..e8b0c3e39a --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java @@ -0,0 +1,325 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.DataIdentifier; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataInfo + */ +@JsonPropertyOrder({ + FieldDataInfo.JSON_PROPERTY_EXTENT, + FieldDataInfo.JSON_PROPERTY_ORIGIN, + FieldDataInfo.JSON_PROPERTY_ISIZE, + FieldDataInfo.JSON_PROPERTY_DATA_IDENTIFIER, + FieldDataInfo.JSON_PROPERTY_TIMES +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataInfo { + public static final String JSON_PROPERTY_EXTENT = "extent"; + private Extent extent; + + public static final String JSON_PROPERTY_ORIGIN = "origin"; + private Origin origin; + + public static final String JSON_PROPERTY_ISIZE = "isize"; + private ISize isize; + + public static final String JSON_PROPERTY_DATA_IDENTIFIER = "dataIdentifier"; + private List dataIdentifier; + + public static final String JSON_PROPERTY_TIMES = "times"; + private List times; + + public FieldDataInfo() { + } + + public FieldDataInfo extent(Extent extent) { + this.extent = extent; + return this; + } + + /** + * Get extent + * @return extent + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Extent getExtent() { + return extent; + } + + + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtent(Extent extent) { + this.extent = extent; + } + + + public FieldDataInfo origin(Origin origin) { + this.origin = origin; + return this; + } + + /** + * Get origin + * @return origin + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Origin getOrigin() { + return origin; + } + + + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOrigin(Origin origin) { + this.origin = origin; + } + + + public FieldDataInfo isize(ISize isize) { + this.isize = isize; + return this; + } + + /** + * Get isize + * @return isize + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ISize getIsize() { + return isize; + } + + + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsize(ISize isize) { + this.isize = isize; + } + + + public FieldDataInfo dataIdentifier(List dataIdentifier) { + this.dataIdentifier = dataIdentifier; + return this; + } + + public FieldDataInfo addDataIdentifierItem(DataIdentifier dataIdentifierItem) { + if (this.dataIdentifier == null) { + this.dataIdentifier = new ArrayList<>(); + } + this.dataIdentifier.add(dataIdentifierItem); + return this; + } + + /** + * Get dataIdentifier + * @return dataIdentifier + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getDataIdentifier() { + return dataIdentifier; + } + + + @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDataIdentifier(List dataIdentifier) { + this.dataIdentifier = dataIdentifier; + } + + + public FieldDataInfo times(List times) { + this.times = times; + return this; + } + + public FieldDataInfo addTimesItem(Double timesItem) { + if (this.times == null) { + this.times = new ArrayList<>(); + } + this.times.add(timesItem); + return this; + } + + /** + * Get times + * @return times + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getTimes() { + return times; + } + + + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimes(List times) { + this.times = times; + } + + + /** + * Return true if this FieldDataInfo object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataInfo fieldDataInfo = (FieldDataInfo) o; + return Objects.equals(this.extent, fieldDataInfo.extent) && + Objects.equals(this.origin, fieldDataInfo.origin) && + Objects.equals(this.isize, fieldDataInfo.isize) && + Objects.equals(this.dataIdentifier, fieldDataInfo.dataIdentifier) && + Objects.equals(this.times, fieldDataInfo.times); + } + + @Override + public int hashCode() { + return Objects.hash(extent, origin, isize, dataIdentifier, times); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataInfo {\n"); + sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); + sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); + sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); + sb.append(" dataIdentifier: ").append(toIndentedString(dataIdentifier)).append("\n"); + sb.append(" times: ").append(toIndentedString(times)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `extent` to the URL query string + if (getExtent() != null) { + joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); + } + + // add `origin` to the URL query string + if (getOrigin() != null) { + joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); + } + + // add `isize` to the URL query string + if (getIsize() != null) { + joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); + } + + // add `dataIdentifier` to the URL query string + if (getDataIdentifier() != null) { + for (int i = 0; i < getDataIdentifier().size(); i++) { + if (getDataIdentifier().get(i) != null) { + joiner.add(getDataIdentifier().get(i).toUrlQueryString(String.format("%sdataIdentifier%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `times` to the URL query string + if (getTimes() != null) { + for (int i = 0; i < getTimes().size(); i++) { + joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java new file mode 100644 index 0000000000..57f2df6b54 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java @@ -0,0 +1,265 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataReferences + */ +@JsonPropertyOrder({ + FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS, + FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS, + FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataReferences { + public static final String JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS = "externalDataIdentifiers"; + private List externalDataIdentifiers; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS = "externalDataAnnotations"; + private List externalDataAnnotations; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS = "externalDataIDSimRefs"; + private Map> externalDataIDSimRefs = new HashMap<>(); + + public FieldDataReferences() { + } + + public FieldDataReferences externalDataIdentifiers(List externalDataIdentifiers) { + this.externalDataIdentifiers = externalDataIdentifiers; + return this; + } + + public FieldDataReferences addExternalDataIdentifiersItem(ExternalDataIdentifier externalDataIdentifiersItem) { + if (this.externalDataIdentifiers == null) { + this.externalDataIdentifiers = new ArrayList<>(); + } + this.externalDataIdentifiers.add(externalDataIdentifiersItem); + return this; + } + + /** + * Get externalDataIdentifiers + * @return externalDataIdentifiers + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getExternalDataIdentifiers() { + return externalDataIdentifiers; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIdentifiers(List externalDataIdentifiers) { + this.externalDataIdentifiers = externalDataIdentifiers; + } + + + public FieldDataReferences externalDataAnnotations(List externalDataAnnotations) { + this.externalDataAnnotations = externalDataAnnotations; + return this; + } + + public FieldDataReferences addExternalDataAnnotationsItem(String externalDataAnnotationsItem) { + if (this.externalDataAnnotations == null) { + this.externalDataAnnotations = new ArrayList<>(); + } + this.externalDataAnnotations.add(externalDataAnnotationsItem); + return this; + } + + /** + * Get externalDataAnnotations + * @return externalDataAnnotations + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getExternalDataAnnotations() { + return externalDataAnnotations; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataAnnotations(List externalDataAnnotations) { + this.externalDataAnnotations = externalDataAnnotations; + } + + + public FieldDataReferences externalDataIDSimRefs(Map> externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; + return this; + } + + public FieldDataReferences putExternalDataIDSimRefsItem(String key, List externalDataIDSimRefsItem) { + if (this.externalDataIDSimRefs == null) { + this.externalDataIDSimRefs = new HashMap<>(); + } + this.externalDataIDSimRefs.put(key, externalDataIDSimRefsItem); + return this; + } + + /** + * Get externalDataIDSimRefs + * @return externalDataIDSimRefs + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Map> getExternalDataIDSimRefs() { + return externalDataIDSimRefs; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIDSimRefs(Map> externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; + } + + + /** + * Return true if this FieldDataReferences object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataReferences fieldDataReferences = (FieldDataReferences) o; + return Objects.equals(this.externalDataIdentifiers, fieldDataReferences.externalDataIdentifiers) && + Objects.equals(this.externalDataAnnotations, fieldDataReferences.externalDataAnnotations) && + Objects.equals(this.externalDataIDSimRefs, fieldDataReferences.externalDataIDSimRefs); + } + + @Override + public int hashCode() { + return Objects.hash(externalDataIdentifiers, externalDataAnnotations, externalDataIDSimRefs); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataReferences {\n"); + sb.append(" externalDataIdentifiers: ").append(toIndentedString(externalDataIdentifiers)).append("\n"); + sb.append(" externalDataAnnotations: ").append(toIndentedString(externalDataAnnotations)).append("\n"); + sb.append(" externalDataIDSimRefs: ").append(toIndentedString(externalDataIDSimRefs)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `externalDataIdentifiers` to the URL query string + if (getExternalDataIdentifiers() != null) { + for (int i = 0; i < getExternalDataIdentifiers().size(); i++) { + if (getExternalDataIdentifiers().get(i) != null) { + joiner.add(getExternalDataIdentifiers().get(i).toUrlQueryString(String.format("%sexternalDataIdentifiers%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `externalDataAnnotations` to the URL query string + if (getExternalDataAnnotations() != null) { + for (int i = 0; i < getExternalDataAnnotations().size(); i++) { + joiner.add(String.format("%sexternalDataAnnotations%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getExternalDataAnnotations().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + // add `externalDataIDSimRefs` to the URL query string + if (getExternalDataIDSimRefs() != null) { + for (String _key : getExternalDataIDSimRefs().keySet()) { + joiner.add(String.format("%sexternalDataIDSimRefs%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), + getExternalDataIDSimRefs().get(_key), URLEncoder.encode(String.valueOf(getExternalDataIDSimRefs().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/IdentityProvider.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/IdentityProvider.java deleted file mode 100644 index e22e4c2e08..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/IdentityProvider.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonValue; - -/** - * Gets or Sets IdentityProvider - */ -public enum IdentityProvider { - - AUTH0("AUTH0"), - - KEYCLOAK("KEYCLOAK"); - - private String value; - - IdentityProvider(String value) { - this.value = value; - } - - @JsonValue - public String getValue() { - return value; - } - - @Override - public String toString() { - return String.valueOf(value); - } - - @JsonCreator - public static IdentityProvider fromValue(String value) { - for (IdentityProvider b : IdentityProvider.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - if (prefix == null) { - prefix = ""; - } - - return String.format("%s=%s", prefix, this.toString()); - } - -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/MapUser.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/MapUser.java deleted file mode 100644 index 688ba68195..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/MapUser.java +++ /dev/null @@ -1,186 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * MapUser - */ -@JsonPropertyOrder({ - MapUser.JSON_PROPERTY_USER_I_D, - MapUser.JSON_PROPERTY_PASSWORD -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class MapUser { - public static final String JSON_PROPERTY_USER_I_D = "userID"; - private String userID; - - public static final String JSON_PROPERTY_PASSWORD = "password"; - private String password; - - public MapUser() { - } - - public MapUser userID(String userID) { - this.userID = userID; - return this; - } - - /** - * Get userID - * @return userID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_USER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getUserID() { - return userID; - } - - - @JsonProperty(JSON_PROPERTY_USER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUserID(String userID) { - this.userID = userID; - } - - - public MapUser password(String password) { - this.password = password; - return this; - } - - /** - * Get password - * @return password - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PASSWORD) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getPassword() { - return password; - } - - - @JsonProperty(JSON_PROPERTY_PASSWORD) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPassword(String password) { - this.password = password; - } - - - /** - * Return true if this MapUser object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - MapUser mapUser = (MapUser) o; - return Objects.equals(this.userID, mapUser.userID) && - Objects.equals(this.password, mapUser.password); - } - - @Override - public int hashCode() { - return Objects.hash(userID, password); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class MapUser {\n"); - sb.append(" userID: ").append(toIndentedString(userID)).append("\n"); - sb.append(" password: ").append(toIndentedString(password)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `userID` to the URL query string - if (getUserID() != null) { - joiner.add(String.format("%suserID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUserID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `password` to the URL query string - if (getPassword() != null) { - joiner.add(String.format("%spassword%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getPassword()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/OverrideRepresentation.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/OverrideRepresentation.java deleted file mode 100644 index ba4cf37c01..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/OverrideRepresentation.java +++ /dev/null @@ -1,308 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * OverrideRepresentation - */ -@JsonPropertyOrder({ - OverrideRepresentation.JSON_PROPERTY_NAME, - OverrideRepresentation.JSON_PROPERTY_TYPE, - OverrideRepresentation.JSON_PROPERTY_EXPRESSION, - OverrideRepresentation.JSON_PROPERTY_VALUES, - OverrideRepresentation.JSON_PROPERTY_CARDINALITY -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class OverrideRepresentation { - public static final String JSON_PROPERTY_NAME = "name"; - private String name; - - public static final String JSON_PROPERTY_TYPE = "type"; - private String type; - - public static final String JSON_PROPERTY_EXPRESSION = "expression"; - private String expression; - - public static final String JSON_PROPERTY_VALUES = "values"; - private List values; - - public static final String JSON_PROPERTY_CARDINALITY = "cardinality"; - private Integer cardinality; - - public OverrideRepresentation() { - } - - public OverrideRepresentation name(String name) { - this.name = name; - return this; - } - - /** - * Get name - * @return name - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getName() { - return name; - } - - - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setName(String name) { - this.name = name; - } - - - public OverrideRepresentation type(String type) { - this.type = type; - return this; - } - - /** - * Get type - * @return type - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getType() { - return type; - } - - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setType(String type) { - this.type = type; - } - - - public OverrideRepresentation expression(String expression) { - this.expression = expression; - return this; - } - - /** - * Get expression - * @return expression - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXPRESSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getExpression() { - return expression; - } - - - @JsonProperty(JSON_PROPERTY_EXPRESSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExpression(String expression) { - this.expression = expression; - } - - - public OverrideRepresentation values(List values) { - this.values = values; - return this; - } - - public OverrideRepresentation addValuesItem(String valuesItem) { - if (this.values == null) { - this.values = new ArrayList<>(); - } - this.values.add(valuesItem); - return this; - } - - /** - * Get values - * @return values - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VALUES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getValues() { - return values; - } - - - @JsonProperty(JSON_PROPERTY_VALUES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setValues(List values) { - this.values = values; - } - - - public OverrideRepresentation cardinality(Integer cardinality) { - this.cardinality = cardinality; - return this; - } - - /** - * Get cardinality - * @return cardinality - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CARDINALITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getCardinality() { - return cardinality; - } - - - @JsonProperty(JSON_PROPERTY_CARDINALITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCardinality(Integer cardinality) { - this.cardinality = cardinality; - } - - - /** - * Return true if this OverrideRepresentation object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - OverrideRepresentation overrideRepresentation = (OverrideRepresentation) o; - return Objects.equals(this.name, overrideRepresentation.name) && - Objects.equals(this.type, overrideRepresentation.type) && - Objects.equals(this.expression, overrideRepresentation.expression) && - Objects.equals(this.values, overrideRepresentation.values) && - Objects.equals(this.cardinality, overrideRepresentation.cardinality); - } - - @Override - public int hashCode() { - return Objects.hash(name, type, expression, values, cardinality); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class OverrideRepresentation {\n"); - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" expression: ").append(toIndentedString(expression)).append("\n"); - sb.append(" values: ").append(toIndentedString(values)).append("\n"); - sb.append(" cardinality: ").append(toIndentedString(cardinality)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `name` to the URL query string - if (getName() != null) { - joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `type` to the URL query string - if (getType() != null) { - joiner.add(String.format("%stype%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `expression` to the URL query string - if (getExpression() != null) { - joiner.add(String.format("%sexpression%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getExpression()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `values` to the URL query string - if (getValues() != null) { - for (int i = 0; i < getValues().size(); i++) { - joiner.add(String.format("%svalues%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getValues().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `cardinality` to the URL query string - if (getCardinality() != null) { - joiner.add(String.format("%scardinality%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCardinality()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationExecutionStatus.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationExecutionStatus.java deleted file mode 100644 index 6954adb7df..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationExecutionStatus.java +++ /dev/null @@ -1,512 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.HtcJobID; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * SimulationExecutionStatus - */ -@JsonPropertyOrder({ - SimulationExecutionStatus.JSON_PROPERTY_FIELD_START_DATE, - SimulationExecutionStatus.JSON_PROPERTY_FIELD_LATEST_UPDATE_DATE, - SimulationExecutionStatus.JSON_PROPERTY_FIELD_END_DATE, - SimulationExecutionStatus.JSON_PROPERTY_FIELD_COMPUTE_HOST, - SimulationExecutionStatus.JSON_PROPERTY_FIELD_HAS_DATA, - SimulationExecutionStatus.JSON_PROPERTY_FIELD_HTC_JOB_I_D, - SimulationExecutionStatus.JSON_PROPERTY_COMPUTE_HOST, - SimulationExecutionStatus.JSON_PROPERTY_END_DATE, - SimulationExecutionStatus.JSON_PROPERTY_LATEST_UPDATE_DATE, - SimulationExecutionStatus.JSON_PROPERTY_START_DATE, - SimulationExecutionStatus.JSON_PROPERTY_HTC_JOB_I_D -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SimulationExecutionStatus { - public static final String JSON_PROPERTY_FIELD_START_DATE = "fieldStartDate"; - private LocalDate fieldStartDate; - - public static final String JSON_PROPERTY_FIELD_LATEST_UPDATE_DATE = "fieldLatestUpdateDate"; - private LocalDate fieldLatestUpdateDate; - - public static final String JSON_PROPERTY_FIELD_END_DATE = "fieldEndDate"; - private LocalDate fieldEndDate; - - public static final String JSON_PROPERTY_FIELD_COMPUTE_HOST = "fieldComputeHost"; - private String fieldComputeHost; - - public static final String JSON_PROPERTY_FIELD_HAS_DATA = "fieldHasData"; - private Boolean fieldHasData; - - public static final String JSON_PROPERTY_FIELD_HTC_JOB_I_D = "fieldHtcJobID"; - private HtcJobID fieldHtcJobID; - - public static final String JSON_PROPERTY_COMPUTE_HOST = "computeHost"; - private String computeHost; - - public static final String JSON_PROPERTY_END_DATE = "endDate"; - private LocalDate endDate; - - public static final String JSON_PROPERTY_LATEST_UPDATE_DATE = "latestUpdateDate"; - private LocalDate latestUpdateDate; - - public static final String JSON_PROPERTY_START_DATE = "startDate"; - private LocalDate startDate; - - public static final String JSON_PROPERTY_HTC_JOB_I_D = "htcJobID"; - private HtcJobID htcJobID; - - public SimulationExecutionStatus() { - } - - public SimulationExecutionStatus fieldStartDate(LocalDate fieldStartDate) { - this.fieldStartDate = fieldStartDate; - return this; - } - - /** - * Get fieldStartDate - * @return fieldStartDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldStartDate() { - return fieldStartDate; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldStartDate(LocalDate fieldStartDate) { - this.fieldStartDate = fieldStartDate; - } - - - public SimulationExecutionStatus fieldLatestUpdateDate(LocalDate fieldLatestUpdateDate) { - this.fieldLatestUpdateDate = fieldLatestUpdateDate; - return this; - } - - /** - * Get fieldLatestUpdateDate - * @return fieldLatestUpdateDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_LATEST_UPDATE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldLatestUpdateDate() { - return fieldLatestUpdateDate; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_LATEST_UPDATE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldLatestUpdateDate(LocalDate fieldLatestUpdateDate) { - this.fieldLatestUpdateDate = fieldLatestUpdateDate; - } - - - public SimulationExecutionStatus fieldEndDate(LocalDate fieldEndDate) { - this.fieldEndDate = fieldEndDate; - return this; - } - - /** - * Get fieldEndDate - * @return fieldEndDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldEndDate() { - return fieldEndDate; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldEndDate(LocalDate fieldEndDate) { - this.fieldEndDate = fieldEndDate; - } - - - public SimulationExecutionStatus fieldComputeHost(String fieldComputeHost) { - this.fieldComputeHost = fieldComputeHost; - return this; - } - - /** - * Get fieldComputeHost - * @return fieldComputeHost - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getFieldComputeHost() { - return fieldComputeHost; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldComputeHost(String fieldComputeHost) { - this.fieldComputeHost = fieldComputeHost; - } - - - public SimulationExecutionStatus fieldHasData(Boolean fieldHasData) { - this.fieldHasData = fieldHasData; - return this; - } - - /** - * Get fieldHasData - * @return fieldHasData - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_HAS_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getFieldHasData() { - return fieldHasData; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_HAS_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldHasData(Boolean fieldHasData) { - this.fieldHasData = fieldHasData; - } - - - public SimulationExecutionStatus fieldHtcJobID(HtcJobID fieldHtcJobID) { - this.fieldHtcJobID = fieldHtcJobID; - return this; - } - - /** - * Get fieldHtcJobID - * @return fieldHtcJobID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_HTC_JOB_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public HtcJobID getFieldHtcJobID() { - return fieldHtcJobID; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_HTC_JOB_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldHtcJobID(HtcJobID fieldHtcJobID) { - this.fieldHtcJobID = fieldHtcJobID; - } - - - public SimulationExecutionStatus computeHost(String computeHost) { - this.computeHost = computeHost; - return this; - } - - /** - * Get computeHost - * @return computeHost - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getComputeHost() { - return computeHost; - } - - - @JsonProperty(JSON_PROPERTY_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setComputeHost(String computeHost) { - this.computeHost = computeHost; - } - - - public SimulationExecutionStatus endDate(LocalDate endDate) { - this.endDate = endDate; - return this; - } - - /** - * Get endDate - * @return endDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getEndDate() { - return endDate; - } - - - @JsonProperty(JSON_PROPERTY_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setEndDate(LocalDate endDate) { - this.endDate = endDate; - } - - - public SimulationExecutionStatus latestUpdateDate(LocalDate latestUpdateDate) { - this.latestUpdateDate = latestUpdateDate; - return this; - } - - /** - * Get latestUpdateDate - * @return latestUpdateDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_LATEST_UPDATE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getLatestUpdateDate() { - return latestUpdateDate; - } - - - @JsonProperty(JSON_PROPERTY_LATEST_UPDATE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setLatestUpdateDate(LocalDate latestUpdateDate) { - this.latestUpdateDate = latestUpdateDate; - } - - - public SimulationExecutionStatus startDate(LocalDate startDate) { - this.startDate = startDate; - return this; - } - - /** - * Get startDate - * @return startDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getStartDate() { - return startDate; - } - - - @JsonProperty(JSON_PROPERTY_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setStartDate(LocalDate startDate) { - this.startDate = startDate; - } - - - public SimulationExecutionStatus htcJobID(HtcJobID htcJobID) { - this.htcJobID = htcJobID; - return this; - } - - /** - * Get htcJobID - * @return htcJobID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_HTC_JOB_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public HtcJobID getHtcJobID() { - return htcJobID; - } - - - @JsonProperty(JSON_PROPERTY_HTC_JOB_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setHtcJobID(HtcJobID htcJobID) { - this.htcJobID = htcJobID; - } - - - /** - * Return true if this SimulationExecutionStatus object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SimulationExecutionStatus simulationExecutionStatus = (SimulationExecutionStatus) o; - return Objects.equals(this.fieldStartDate, simulationExecutionStatus.fieldStartDate) && - Objects.equals(this.fieldLatestUpdateDate, simulationExecutionStatus.fieldLatestUpdateDate) && - Objects.equals(this.fieldEndDate, simulationExecutionStatus.fieldEndDate) && - Objects.equals(this.fieldComputeHost, simulationExecutionStatus.fieldComputeHost) && - Objects.equals(this.fieldHasData, simulationExecutionStatus.fieldHasData) && - Objects.equals(this.fieldHtcJobID, simulationExecutionStatus.fieldHtcJobID) && - Objects.equals(this.computeHost, simulationExecutionStatus.computeHost) && - Objects.equals(this.endDate, simulationExecutionStatus.endDate) && - Objects.equals(this.latestUpdateDate, simulationExecutionStatus.latestUpdateDate) && - Objects.equals(this.startDate, simulationExecutionStatus.startDate) && - Objects.equals(this.htcJobID, simulationExecutionStatus.htcJobID); - } - - @Override - public int hashCode() { - return Objects.hash(fieldStartDate, fieldLatestUpdateDate, fieldEndDate, fieldComputeHost, fieldHasData, fieldHtcJobID, computeHost, endDate, latestUpdateDate, startDate, htcJobID); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SimulationExecutionStatus {\n"); - sb.append(" fieldStartDate: ").append(toIndentedString(fieldStartDate)).append("\n"); - sb.append(" fieldLatestUpdateDate: ").append(toIndentedString(fieldLatestUpdateDate)).append("\n"); - sb.append(" fieldEndDate: ").append(toIndentedString(fieldEndDate)).append("\n"); - sb.append(" fieldComputeHost: ").append(toIndentedString(fieldComputeHost)).append("\n"); - sb.append(" fieldHasData: ").append(toIndentedString(fieldHasData)).append("\n"); - sb.append(" fieldHtcJobID: ").append(toIndentedString(fieldHtcJobID)).append("\n"); - sb.append(" computeHost: ").append(toIndentedString(computeHost)).append("\n"); - sb.append(" endDate: ").append(toIndentedString(endDate)).append("\n"); - sb.append(" latestUpdateDate: ").append(toIndentedString(latestUpdateDate)).append("\n"); - sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); - sb.append(" htcJobID: ").append(toIndentedString(htcJobID)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `fieldStartDate` to the URL query string - if (getFieldStartDate() != null) { - joiner.add(String.format("%sfieldStartDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldStartDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldLatestUpdateDate` to the URL query string - if (getFieldLatestUpdateDate() != null) { - joiner.add(String.format("%sfieldLatestUpdateDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldLatestUpdateDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldEndDate` to the URL query string - if (getFieldEndDate() != null) { - joiner.add(String.format("%sfieldEndDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldEndDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldComputeHost` to the URL query string - if (getFieldComputeHost() != null) { - joiner.add(String.format("%sfieldComputeHost%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldComputeHost()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldHasData` to the URL query string - if (getFieldHasData() != null) { - joiner.add(String.format("%sfieldHasData%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldHasData()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldHtcJobID` to the URL query string - if (getFieldHtcJobID() != null) { - joiner.add(getFieldHtcJobID().toUrlQueryString(prefix + "fieldHtcJobID" + suffix)); - } - - // add `computeHost` to the URL query string - if (getComputeHost() != null) { - joiner.add(String.format("%scomputeHost%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getComputeHost()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `endDate` to the URL query string - if (getEndDate() != null) { - joiner.add(String.format("%sendDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getEndDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `latestUpdateDate` to the URL query string - if (getLatestUpdateDate() != null) { - joiner.add(String.format("%slatestUpdateDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getLatestUpdateDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `startDate` to the URL query string - if (getStartDate() != null) { - joiner.add(String.format("%sstartDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getStartDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `htcJobID` to the URL query string - if (getHtcJobID() != null) { - joiner.add(getHtcJobID().toUrlQueryString(prefix + "htcJobID" + suffix)); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationJobStatus.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationJobStatus.java deleted file mode 100644 index 7866d29e1c..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationJobStatus.java +++ /dev/null @@ -1,949 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.SchedulerStatus; -import org.vcell.restclient.model.SimulationExecutionStatus; -import org.vcell.restclient.model.SimulationMessage; -import org.vcell.restclient.model.SimulationQueueEntryStatus; -import org.vcell.restclient.model.VCSimulationIdentifier; -import org.vcell.restclient.model.VCellServerID; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * SimulationJobStatus - */ -@JsonPropertyOrder({ - SimulationJobStatus.JSON_PROPERTY_FIELD_TIME_DATE_STAMP, - SimulationJobStatus.JSON_PROPERTY_FIELD_V_C_SIM_I_D, - SimulationJobStatus.JSON_PROPERTY_FIELD_SUBMIT_DATE, - SimulationJobStatus.JSON_PROPERTY_FIELD_SCHEDULER_STATUS, - SimulationJobStatus.JSON_PROPERTY_FIELD_TASK_I_D, - SimulationJobStatus.JSON_PROPERTY_FIELD_SIMULATION_MESSAGE, - SimulationJobStatus.JSON_PROPERTY_FIELD_SERVER_I_D, - SimulationJobStatus.JSON_PROPERTY_FIELD_JOB_INDEX, - SimulationJobStatus.JSON_PROPERTY_FIELD_SIMULATION_QUEUE_ENTRY_STATUS, - SimulationJobStatus.JSON_PROPERTY_FIELD_SIMULATION_EXECUTION_STATUS, - SimulationJobStatus.JSON_PROPERTY_COMPUTE_HOST, - SimulationJobStatus.JSON_PROPERTY_END_DATE, - SimulationJobStatus.JSON_PROPERTY_JOB_INDEX, - SimulationJobStatus.JSON_PROPERTY_SCHEDULER_STATUS, - SimulationJobStatus.JSON_PROPERTY_SERVER_I_D, - SimulationJobStatus.JSON_PROPERTY_SIMULATION_EXECUTION_STATUS, - SimulationJobStatus.JSON_PROPERTY_SIMULATION_QUEUE_ENTRY_STATUS, - SimulationJobStatus.JSON_PROPERTY_START_DATE, - SimulationJobStatus.JSON_PROPERTY_SIMULATION_MESSAGE, - SimulationJobStatus.JSON_PROPERTY_SUBMIT_DATE, - SimulationJobStatus.JSON_PROPERTY_TASK_I_D, - SimulationJobStatus.JSON_PROPERTY_TIME_DATE_STAMP, - SimulationJobStatus.JSON_PROPERTY_V_C_SIMULATION_IDENTIFIER -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SimulationJobStatus { - public static final String JSON_PROPERTY_FIELD_TIME_DATE_STAMP = "fieldTimeDateStamp"; - private LocalDate fieldTimeDateStamp; - - public static final String JSON_PROPERTY_FIELD_V_C_SIM_I_D = "fieldVCSimID"; - private VCSimulationIdentifier fieldVCSimID; - - public static final String JSON_PROPERTY_FIELD_SUBMIT_DATE = "fieldSubmitDate"; - private LocalDate fieldSubmitDate; - - public static final String JSON_PROPERTY_FIELD_SCHEDULER_STATUS = "fieldSchedulerStatus"; - private SchedulerStatus fieldSchedulerStatus; - - public static final String JSON_PROPERTY_FIELD_TASK_I_D = "fieldTaskID"; - private Integer fieldTaskID; - - public static final String JSON_PROPERTY_FIELD_SIMULATION_MESSAGE = "fieldSimulationMessage"; - private SimulationMessage fieldSimulationMessage; - - public static final String JSON_PROPERTY_FIELD_SERVER_I_D = "fieldServerID"; - private VCellServerID fieldServerID; - - public static final String JSON_PROPERTY_FIELD_JOB_INDEX = "fieldJobIndex"; - private Integer fieldJobIndex; - - public static final String JSON_PROPERTY_FIELD_SIMULATION_QUEUE_ENTRY_STATUS = "fieldSimulationQueueEntryStatus"; - private SimulationQueueEntryStatus fieldSimulationQueueEntryStatus; - - public static final String JSON_PROPERTY_FIELD_SIMULATION_EXECUTION_STATUS = "fieldSimulationExecutionStatus"; - private SimulationExecutionStatus fieldSimulationExecutionStatus; - - public static final String JSON_PROPERTY_COMPUTE_HOST = "computeHost"; - private String computeHost; - - public static final String JSON_PROPERTY_END_DATE = "endDate"; - private LocalDate endDate; - - public static final String JSON_PROPERTY_JOB_INDEX = "jobIndex"; - private Integer jobIndex; - - public static final String JSON_PROPERTY_SCHEDULER_STATUS = "schedulerStatus"; - private SchedulerStatus schedulerStatus; - - public static final String JSON_PROPERTY_SERVER_I_D = "serverID"; - private VCellServerID serverID; - - public static final String JSON_PROPERTY_SIMULATION_EXECUTION_STATUS = "simulationExecutionStatus"; - private SimulationExecutionStatus simulationExecutionStatus; - - public static final String JSON_PROPERTY_SIMULATION_QUEUE_ENTRY_STATUS = "simulationQueueEntryStatus"; - private SimulationQueueEntryStatus simulationQueueEntryStatus; - - public static final String JSON_PROPERTY_START_DATE = "startDate"; - private LocalDate startDate; - - public static final String JSON_PROPERTY_SIMULATION_MESSAGE = "simulationMessage"; - private SimulationMessage simulationMessage; - - public static final String JSON_PROPERTY_SUBMIT_DATE = "submitDate"; - private LocalDate submitDate; - - public static final String JSON_PROPERTY_TASK_I_D = "taskID"; - private Integer taskID; - - public static final String JSON_PROPERTY_TIME_DATE_STAMP = "timeDateStamp"; - private LocalDate timeDateStamp; - - public static final String JSON_PROPERTY_V_C_SIMULATION_IDENTIFIER = "vCSimulationIdentifier"; - private VCSimulationIdentifier vCSimulationIdentifier; - - public SimulationJobStatus() { - } - - public SimulationJobStatus fieldTimeDateStamp(LocalDate fieldTimeDateStamp) { - this.fieldTimeDateStamp = fieldTimeDateStamp; - return this; - } - - /** - * Get fieldTimeDateStamp - * @return fieldTimeDateStamp - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_TIME_DATE_STAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldTimeDateStamp() { - return fieldTimeDateStamp; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_TIME_DATE_STAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldTimeDateStamp(LocalDate fieldTimeDateStamp) { - this.fieldTimeDateStamp = fieldTimeDateStamp; - } - - - public SimulationJobStatus fieldVCSimID(VCSimulationIdentifier fieldVCSimID) { - this.fieldVCSimID = fieldVCSimID; - return this; - } - - /** - * Get fieldVCSimID - * @return fieldVCSimID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_V_C_SIM_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VCSimulationIdentifier getFieldVCSimID() { - return fieldVCSimID; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_V_C_SIM_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldVCSimID(VCSimulationIdentifier fieldVCSimID) { - this.fieldVCSimID = fieldVCSimID; - } - - - public SimulationJobStatus fieldSubmitDate(LocalDate fieldSubmitDate) { - this.fieldSubmitDate = fieldSubmitDate; - return this; - } - - /** - * Get fieldSubmitDate - * @return fieldSubmitDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SUBMIT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldSubmitDate() { - return fieldSubmitDate; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SUBMIT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldSubmitDate(LocalDate fieldSubmitDate) { - this.fieldSubmitDate = fieldSubmitDate; - } - - - public SimulationJobStatus fieldSchedulerStatus(SchedulerStatus fieldSchedulerStatus) { - this.fieldSchedulerStatus = fieldSchedulerStatus; - return this; - } - - /** - * Get fieldSchedulerStatus - * @return fieldSchedulerStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SCHEDULER_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SchedulerStatus getFieldSchedulerStatus() { - return fieldSchedulerStatus; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SCHEDULER_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldSchedulerStatus(SchedulerStatus fieldSchedulerStatus) { - this.fieldSchedulerStatus = fieldSchedulerStatus; - } - - - public SimulationJobStatus fieldTaskID(Integer fieldTaskID) { - this.fieldTaskID = fieldTaskID; - return this; - } - - /** - * Get fieldTaskID - * @return fieldTaskID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_TASK_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getFieldTaskID() { - return fieldTaskID; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_TASK_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldTaskID(Integer fieldTaskID) { - this.fieldTaskID = fieldTaskID; - } - - - public SimulationJobStatus fieldSimulationMessage(SimulationMessage fieldSimulationMessage) { - this.fieldSimulationMessage = fieldSimulationMessage; - return this; - } - - /** - * Get fieldSimulationMessage - * @return fieldSimulationMessage - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_MESSAGE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationMessage getFieldSimulationMessage() { - return fieldSimulationMessage; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_MESSAGE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldSimulationMessage(SimulationMessage fieldSimulationMessage) { - this.fieldSimulationMessage = fieldSimulationMessage; - } - - - public SimulationJobStatus fieldServerID(VCellServerID fieldServerID) { - this.fieldServerID = fieldServerID; - return this; - } - - /** - * Get fieldServerID - * @return fieldServerID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VCellServerID getFieldServerID() { - return fieldServerID; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldServerID(VCellServerID fieldServerID) { - this.fieldServerID = fieldServerID; - } - - - public SimulationJobStatus fieldJobIndex(Integer fieldJobIndex) { - this.fieldJobIndex = fieldJobIndex; - return this; - } - - /** - * Get fieldJobIndex - * @return fieldJobIndex - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getFieldJobIndex() { - return fieldJobIndex; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldJobIndex(Integer fieldJobIndex) { - this.fieldJobIndex = fieldJobIndex; - } - - - public SimulationJobStatus fieldSimulationQueueEntryStatus(SimulationQueueEntryStatus fieldSimulationQueueEntryStatus) { - this.fieldSimulationQueueEntryStatus = fieldSimulationQueueEntryStatus; - return this; - } - - /** - * Get fieldSimulationQueueEntryStatus - * @return fieldSimulationQueueEntryStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_QUEUE_ENTRY_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationQueueEntryStatus getFieldSimulationQueueEntryStatus() { - return fieldSimulationQueueEntryStatus; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_QUEUE_ENTRY_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldSimulationQueueEntryStatus(SimulationQueueEntryStatus fieldSimulationQueueEntryStatus) { - this.fieldSimulationQueueEntryStatus = fieldSimulationQueueEntryStatus; - } - - - public SimulationJobStatus fieldSimulationExecutionStatus(SimulationExecutionStatus fieldSimulationExecutionStatus) { - this.fieldSimulationExecutionStatus = fieldSimulationExecutionStatus; - return this; - } - - /** - * Get fieldSimulationExecutionStatus - * @return fieldSimulationExecutionStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_EXECUTION_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationExecutionStatus getFieldSimulationExecutionStatus() { - return fieldSimulationExecutionStatus; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_SIMULATION_EXECUTION_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldSimulationExecutionStatus(SimulationExecutionStatus fieldSimulationExecutionStatus) { - this.fieldSimulationExecutionStatus = fieldSimulationExecutionStatus; - } - - - public SimulationJobStatus computeHost(String computeHost) { - this.computeHost = computeHost; - return this; - } - - /** - * Get computeHost - * @return computeHost - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getComputeHost() { - return computeHost; - } - - - @JsonProperty(JSON_PROPERTY_COMPUTE_HOST) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setComputeHost(String computeHost) { - this.computeHost = computeHost; - } - - - public SimulationJobStatus endDate(LocalDate endDate) { - this.endDate = endDate; - return this; - } - - /** - * Get endDate - * @return endDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getEndDate() { - return endDate; - } - - - @JsonProperty(JSON_PROPERTY_END_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setEndDate(LocalDate endDate) { - this.endDate = endDate; - } - - - public SimulationJobStatus jobIndex(Integer jobIndex) { - this.jobIndex = jobIndex; - return this; - } - - /** - * Get jobIndex - * @return jobIndex - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getJobIndex() { - return jobIndex; - } - - - @JsonProperty(JSON_PROPERTY_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setJobIndex(Integer jobIndex) { - this.jobIndex = jobIndex; - } - - - public SimulationJobStatus schedulerStatus(SchedulerStatus schedulerStatus) { - this.schedulerStatus = schedulerStatus; - return this; - } - - /** - * Get schedulerStatus - * @return schedulerStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SCHEDULER_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SchedulerStatus getSchedulerStatus() { - return schedulerStatus; - } - - - @JsonProperty(JSON_PROPERTY_SCHEDULER_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSchedulerStatus(SchedulerStatus schedulerStatus) { - this.schedulerStatus = schedulerStatus; - } - - - public SimulationJobStatus serverID(VCellServerID serverID) { - this.serverID = serverID; - return this; - } - - /** - * Get serverID - * @return serverID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VCellServerID getServerID() { - return serverID; - } - - - @JsonProperty(JSON_PROPERTY_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setServerID(VCellServerID serverID) { - this.serverID = serverID; - } - - - public SimulationJobStatus simulationExecutionStatus(SimulationExecutionStatus simulationExecutionStatus) { - this.simulationExecutionStatus = simulationExecutionStatus; - return this; - } - - /** - * Get simulationExecutionStatus - * @return simulationExecutionStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIMULATION_EXECUTION_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationExecutionStatus getSimulationExecutionStatus() { - return simulationExecutionStatus; - } - - - @JsonProperty(JSON_PROPERTY_SIMULATION_EXECUTION_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSimulationExecutionStatus(SimulationExecutionStatus simulationExecutionStatus) { - this.simulationExecutionStatus = simulationExecutionStatus; - } - - - public SimulationJobStatus simulationQueueEntryStatus(SimulationQueueEntryStatus simulationQueueEntryStatus) { - this.simulationQueueEntryStatus = simulationQueueEntryStatus; - return this; - } - - /** - * Get simulationQueueEntryStatus - * @return simulationQueueEntryStatus - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIMULATION_QUEUE_ENTRY_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationQueueEntryStatus getSimulationQueueEntryStatus() { - return simulationQueueEntryStatus; - } - - - @JsonProperty(JSON_PROPERTY_SIMULATION_QUEUE_ENTRY_STATUS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSimulationQueueEntryStatus(SimulationQueueEntryStatus simulationQueueEntryStatus) { - this.simulationQueueEntryStatus = simulationQueueEntryStatus; - } - - - public SimulationJobStatus startDate(LocalDate startDate) { - this.startDate = startDate; - return this; - } - - /** - * Get startDate - * @return startDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getStartDate() { - return startDate; - } - - - @JsonProperty(JSON_PROPERTY_START_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setStartDate(LocalDate startDate) { - this.startDate = startDate; - } - - - public SimulationJobStatus simulationMessage(SimulationMessage simulationMessage) { - this.simulationMessage = simulationMessage; - return this; - } - - /** - * Get simulationMessage - * @return simulationMessage - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIMULATION_MESSAGE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationMessage getSimulationMessage() { - return simulationMessage; - } - - - @JsonProperty(JSON_PROPERTY_SIMULATION_MESSAGE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSimulationMessage(SimulationMessage simulationMessage) { - this.simulationMessage = simulationMessage; - } - - - public SimulationJobStatus submitDate(LocalDate submitDate) { - this.submitDate = submitDate; - return this; - } - - /** - * Get submitDate - * @return submitDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SUBMIT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getSubmitDate() { - return submitDate; - } - - - @JsonProperty(JSON_PROPERTY_SUBMIT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSubmitDate(LocalDate submitDate) { - this.submitDate = submitDate; - } - - - public SimulationJobStatus taskID(Integer taskID) { - this.taskID = taskID; - return this; - } - - /** - * Get taskID - * @return taskID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TASK_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getTaskID() { - return taskID; - } - - - @JsonProperty(JSON_PROPERTY_TASK_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTaskID(Integer taskID) { - this.taskID = taskID; - } - - - public SimulationJobStatus timeDateStamp(LocalDate timeDateStamp) { - this.timeDateStamp = timeDateStamp; - return this; - } - - /** - * Get timeDateStamp - * @return timeDateStamp - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TIME_DATE_STAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getTimeDateStamp() { - return timeDateStamp; - } - - - @JsonProperty(JSON_PROPERTY_TIME_DATE_STAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimeDateStamp(LocalDate timeDateStamp) { - this.timeDateStamp = timeDateStamp; - } - - - public SimulationJobStatus vCSimulationIdentifier(VCSimulationIdentifier vCSimulationIdentifier) { - this.vCSimulationIdentifier = vCSimulationIdentifier; - return this; - } - - /** - * Get vCSimulationIdentifier - * @return vCSimulationIdentifier - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_V_C_SIMULATION_IDENTIFIER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VCSimulationIdentifier getvCSimulationIdentifier() { - return vCSimulationIdentifier; - } - - - @JsonProperty(JSON_PROPERTY_V_C_SIMULATION_IDENTIFIER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setvCSimulationIdentifier(VCSimulationIdentifier vCSimulationIdentifier) { - this.vCSimulationIdentifier = vCSimulationIdentifier; - } - - - /** - * Return true if this SimulationJobStatus object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SimulationJobStatus simulationJobStatus = (SimulationJobStatus) o; - return Objects.equals(this.fieldTimeDateStamp, simulationJobStatus.fieldTimeDateStamp) && - Objects.equals(this.fieldVCSimID, simulationJobStatus.fieldVCSimID) && - Objects.equals(this.fieldSubmitDate, simulationJobStatus.fieldSubmitDate) && - Objects.equals(this.fieldSchedulerStatus, simulationJobStatus.fieldSchedulerStatus) && - Objects.equals(this.fieldTaskID, simulationJobStatus.fieldTaskID) && - Objects.equals(this.fieldSimulationMessage, simulationJobStatus.fieldSimulationMessage) && - Objects.equals(this.fieldServerID, simulationJobStatus.fieldServerID) && - Objects.equals(this.fieldJobIndex, simulationJobStatus.fieldJobIndex) && - Objects.equals(this.fieldSimulationQueueEntryStatus, simulationJobStatus.fieldSimulationQueueEntryStatus) && - Objects.equals(this.fieldSimulationExecutionStatus, simulationJobStatus.fieldSimulationExecutionStatus) && - Objects.equals(this.computeHost, simulationJobStatus.computeHost) && - Objects.equals(this.endDate, simulationJobStatus.endDate) && - Objects.equals(this.jobIndex, simulationJobStatus.jobIndex) && - Objects.equals(this.schedulerStatus, simulationJobStatus.schedulerStatus) && - Objects.equals(this.serverID, simulationJobStatus.serverID) && - Objects.equals(this.simulationExecutionStatus, simulationJobStatus.simulationExecutionStatus) && - Objects.equals(this.simulationQueueEntryStatus, simulationJobStatus.simulationQueueEntryStatus) && - Objects.equals(this.startDate, simulationJobStatus.startDate) && - Objects.equals(this.simulationMessage, simulationJobStatus.simulationMessage) && - Objects.equals(this.submitDate, simulationJobStatus.submitDate) && - Objects.equals(this.taskID, simulationJobStatus.taskID) && - Objects.equals(this.timeDateStamp, simulationJobStatus.timeDateStamp) && - Objects.equals(this.vCSimulationIdentifier, simulationJobStatus.vCSimulationIdentifier); - } - - @Override - public int hashCode() { - return Objects.hash(fieldTimeDateStamp, fieldVCSimID, fieldSubmitDate, fieldSchedulerStatus, fieldTaskID, fieldSimulationMessage, fieldServerID, fieldJobIndex, fieldSimulationQueueEntryStatus, fieldSimulationExecutionStatus, computeHost, endDate, jobIndex, schedulerStatus, serverID, simulationExecutionStatus, simulationQueueEntryStatus, startDate, simulationMessage, submitDate, taskID, timeDateStamp, vCSimulationIdentifier); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SimulationJobStatus {\n"); - sb.append(" fieldTimeDateStamp: ").append(toIndentedString(fieldTimeDateStamp)).append("\n"); - sb.append(" fieldVCSimID: ").append(toIndentedString(fieldVCSimID)).append("\n"); - sb.append(" fieldSubmitDate: ").append(toIndentedString(fieldSubmitDate)).append("\n"); - sb.append(" fieldSchedulerStatus: ").append(toIndentedString(fieldSchedulerStatus)).append("\n"); - sb.append(" fieldTaskID: ").append(toIndentedString(fieldTaskID)).append("\n"); - sb.append(" fieldSimulationMessage: ").append(toIndentedString(fieldSimulationMessage)).append("\n"); - sb.append(" fieldServerID: ").append(toIndentedString(fieldServerID)).append("\n"); - sb.append(" fieldJobIndex: ").append(toIndentedString(fieldJobIndex)).append("\n"); - sb.append(" fieldSimulationQueueEntryStatus: ").append(toIndentedString(fieldSimulationQueueEntryStatus)).append("\n"); - sb.append(" fieldSimulationExecutionStatus: ").append(toIndentedString(fieldSimulationExecutionStatus)).append("\n"); - sb.append(" computeHost: ").append(toIndentedString(computeHost)).append("\n"); - sb.append(" endDate: ").append(toIndentedString(endDate)).append("\n"); - sb.append(" jobIndex: ").append(toIndentedString(jobIndex)).append("\n"); - sb.append(" schedulerStatus: ").append(toIndentedString(schedulerStatus)).append("\n"); - sb.append(" serverID: ").append(toIndentedString(serverID)).append("\n"); - sb.append(" simulationExecutionStatus: ").append(toIndentedString(simulationExecutionStatus)).append("\n"); - sb.append(" simulationQueueEntryStatus: ").append(toIndentedString(simulationQueueEntryStatus)).append("\n"); - sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); - sb.append(" simulationMessage: ").append(toIndentedString(simulationMessage)).append("\n"); - sb.append(" submitDate: ").append(toIndentedString(submitDate)).append("\n"); - sb.append(" taskID: ").append(toIndentedString(taskID)).append("\n"); - sb.append(" timeDateStamp: ").append(toIndentedString(timeDateStamp)).append("\n"); - sb.append(" vCSimulationIdentifier: ").append(toIndentedString(vCSimulationIdentifier)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `fieldTimeDateStamp` to the URL query string - if (getFieldTimeDateStamp() != null) { - joiner.add(String.format("%sfieldTimeDateStamp%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldTimeDateStamp()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldVCSimID` to the URL query string - if (getFieldVCSimID() != null) { - joiner.add(getFieldVCSimID().toUrlQueryString(prefix + "fieldVCSimID" + suffix)); - } - - // add `fieldSubmitDate` to the URL query string - if (getFieldSubmitDate() != null) { - joiner.add(String.format("%sfieldSubmitDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldSubmitDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldSchedulerStatus` to the URL query string - if (getFieldSchedulerStatus() != null) { - joiner.add(String.format("%sfieldSchedulerStatus%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldSchedulerStatus()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldTaskID` to the URL query string - if (getFieldTaskID() != null) { - joiner.add(String.format("%sfieldTaskID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldTaskID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldSimulationMessage` to the URL query string - if (getFieldSimulationMessage() != null) { - joiner.add(getFieldSimulationMessage().toUrlQueryString(prefix + "fieldSimulationMessage" + suffix)); - } - - // add `fieldServerID` to the URL query string - if (getFieldServerID() != null) { - joiner.add(getFieldServerID().toUrlQueryString(prefix + "fieldServerID" + suffix)); - } - - // add `fieldJobIndex` to the URL query string - if (getFieldJobIndex() != null) { - joiner.add(String.format("%sfieldJobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldSimulationQueueEntryStatus` to the URL query string - if (getFieldSimulationQueueEntryStatus() != null) { - joiner.add(getFieldSimulationQueueEntryStatus().toUrlQueryString(prefix + "fieldSimulationQueueEntryStatus" + suffix)); - } - - // add `fieldSimulationExecutionStatus` to the URL query string - if (getFieldSimulationExecutionStatus() != null) { - joiner.add(getFieldSimulationExecutionStatus().toUrlQueryString(prefix + "fieldSimulationExecutionStatus" + suffix)); - } - - // add `computeHost` to the URL query string - if (getComputeHost() != null) { - joiner.add(String.format("%scomputeHost%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getComputeHost()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `endDate` to the URL query string - if (getEndDate() != null) { - joiner.add(String.format("%sendDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getEndDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `jobIndex` to the URL query string - if (getJobIndex() != null) { - joiner.add(String.format("%sjobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `schedulerStatus` to the URL query string - if (getSchedulerStatus() != null) { - joiner.add(String.format("%sschedulerStatus%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSchedulerStatus()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `serverID` to the URL query string - if (getServerID() != null) { - joiner.add(getServerID().toUrlQueryString(prefix + "serverID" + suffix)); - } - - // add `simulationExecutionStatus` to the URL query string - if (getSimulationExecutionStatus() != null) { - joiner.add(getSimulationExecutionStatus().toUrlQueryString(prefix + "simulationExecutionStatus" + suffix)); - } - - // add `simulationQueueEntryStatus` to the URL query string - if (getSimulationQueueEntryStatus() != null) { - joiner.add(getSimulationQueueEntryStatus().toUrlQueryString(prefix + "simulationQueueEntryStatus" + suffix)); - } - - // add `startDate` to the URL query string - if (getStartDate() != null) { - joiner.add(String.format("%sstartDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getStartDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `simulationMessage` to the URL query string - if (getSimulationMessage() != null) { - joiner.add(getSimulationMessage().toUrlQueryString(prefix + "simulationMessage" + suffix)); - } - - // add `submitDate` to the URL query string - if (getSubmitDate() != null) { - joiner.add(String.format("%ssubmitDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSubmitDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `taskID` to the URL query string - if (getTaskID() != null) { - joiner.add(String.format("%staskID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTaskID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `timeDateStamp` to the URL query string - if (getTimeDateStamp() != null) { - joiner.add(String.format("%stimeDateStamp%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTimeDateStamp()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `vCSimulationIdentifier` to the URL query string - if (getvCSimulationIdentifier() != null) { - joiner.add(getvCSimulationIdentifier().toUrlQueryString(prefix + "vCSimulationIdentifier" + suffix)); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationQueueEntryStatus.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationQueueEntryStatus.java deleted file mode 100644 index d6080ab8b1..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/SimulationQueueEntryStatus.java +++ /dev/null @@ -1,329 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; - -import com.fasterxml.jackson.annotation.*; - -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.SimulationQueueID; - - -/** - * SimulationQueueEntryStatus - */ -@JsonPropertyOrder({ - SimulationQueueEntryStatus.JSON_PROPERTY_FIELD_QUEUE_PRIORITY, - SimulationQueueEntryStatus.JSON_PROPERTY_FIELD_QUEUE_DATE, - SimulationQueueEntryStatus.JSON_PROPERTY_FIELD_QUEUE_I_D, - SimulationQueueEntryStatus.JSON_PROPERTY_QUEUE_DATE, - SimulationQueueEntryStatus.JSON_PROPERTY_QUEUE_I_D, - SimulationQueueEntryStatus.JSON_PROPERTY_QUEUE_PRIORITY -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SimulationQueueEntryStatus { - public static final String JSON_PROPERTY_FIELD_QUEUE_PRIORITY = "fieldQueuePriority"; - private Integer fieldQueuePriority; - - public static final String JSON_PROPERTY_FIELD_QUEUE_DATE = "fieldQueueDate"; - private LocalDate fieldQueueDate; - - public static final String JSON_PROPERTY_FIELD_QUEUE_I_D = "fieldQueueID"; - private SimulationQueueID fieldQueueID; - - public static final String JSON_PROPERTY_QUEUE_DATE = "queueDate"; - private LocalDate queueDate; - - public static final String JSON_PROPERTY_QUEUE_I_D = "queueID"; - private SimulationQueueID queueID; - - public static final String JSON_PROPERTY_QUEUE_PRIORITY = "queuePriority"; - private Integer queuePriority; - - public SimulationQueueEntryStatus() { - } - - public SimulationQueueEntryStatus fieldQueuePriority(Integer fieldQueuePriority) { - this.fieldQueuePriority = fieldQueuePriority; - return this; - } - - /** - * Get fieldQueuePriority - * @return fieldQueuePriority - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_PRIORITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getFieldQueuePriority() { - return fieldQueuePriority; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_PRIORITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldQueuePriority(Integer fieldQueuePriority) { - this.fieldQueuePriority = fieldQueuePriority; - } - - - public SimulationQueueEntryStatus fieldQueueDate(LocalDate fieldQueueDate) { - this.fieldQueueDate = fieldQueueDate; - return this; - } - - /** - * Get fieldQueueDate - * @return fieldQueueDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getFieldQueueDate() { - return fieldQueueDate; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldQueueDate(LocalDate fieldQueueDate) { - this.fieldQueueDate = fieldQueueDate; - } - - - public SimulationQueueEntryStatus fieldQueueID(SimulationQueueID fieldQueueID) { - this.fieldQueueID = fieldQueueID; - return this; - } - - /** - * Get fieldQueueID - * @return fieldQueueID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationQueueID getFieldQueueID() { - return fieldQueueID; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_QUEUE_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldQueueID(SimulationQueueID fieldQueueID) { - this.fieldQueueID = fieldQueueID; - } - - - public SimulationQueueEntryStatus queueDate(LocalDate queueDate) { - this.queueDate = queueDate; - return this; - } - - /** - * Get queueDate - * @return queueDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_QUEUE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getQueueDate() { - return queueDate; - } - - - @JsonProperty(JSON_PROPERTY_QUEUE_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setQueueDate(LocalDate queueDate) { - this.queueDate = queueDate; - } - - - public SimulationQueueEntryStatus queueID(SimulationQueueID queueID) { - this.queueID = queueID; - return this; - } - - /** - * Get queueID - * @return queueID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_QUEUE_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public SimulationQueueID getQueueID() { - return queueID; - } - - - @JsonProperty(JSON_PROPERTY_QUEUE_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setQueueID(SimulationQueueID queueID) { - this.queueID = queueID; - } - - - public SimulationQueueEntryStatus queuePriority(Integer queuePriority) { - this.queuePriority = queuePriority; - return this; - } - - /** - * Get queuePriority - * @return queuePriority - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_QUEUE_PRIORITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getQueuePriority() { - return queuePriority; - } - - - @JsonProperty(JSON_PROPERTY_QUEUE_PRIORITY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setQueuePriority(Integer queuePriority) { - this.queuePriority = queuePriority; - } - - - /** - * Return true if this SimulationQueueEntryStatus object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SimulationQueueEntryStatus simulationQueueEntryStatus = (SimulationQueueEntryStatus) o; - return Objects.equals(this.fieldQueuePriority, simulationQueueEntryStatus.fieldQueuePriority) && - Objects.equals(this.fieldQueueDate, simulationQueueEntryStatus.fieldQueueDate) && - Objects.equals(this.fieldQueueID, simulationQueueEntryStatus.fieldQueueID) && - Objects.equals(this.queueDate, simulationQueueEntryStatus.queueDate) && - Objects.equals(this.queueID, simulationQueueEntryStatus.queueID) && - Objects.equals(this.queuePriority, simulationQueueEntryStatus.queuePriority); - } - - @Override - public int hashCode() { - return Objects.hash(fieldQueuePriority, fieldQueueDate, fieldQueueID, queueDate, queueID, queuePriority); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SimulationQueueEntryStatus {\n"); - sb.append(" fieldQueuePriority: ").append(toIndentedString(fieldQueuePriority)).append("\n"); - sb.append(" fieldQueueDate: ").append(toIndentedString(fieldQueueDate)).append("\n"); - sb.append(" fieldQueueID: ").append(toIndentedString(fieldQueueID)).append("\n"); - sb.append(" queueDate: ").append(toIndentedString(queueDate)).append("\n"); - sb.append(" queueID: ").append(toIndentedString(queueID)).append("\n"); - sb.append(" queuePriority: ").append(toIndentedString(queuePriority)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `fieldQueuePriority` to the URL query string - if (getFieldQueuePriority() != null) { - joiner.add(String.format("%sfieldQueuePriority%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldQueuePriority()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldQueueDate` to the URL query string - if (getFieldQueueDate() != null) { - joiner.add(String.format("%sfieldQueueDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldQueueDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `fieldQueueID` to the URL query string - if (getFieldQueueID() != null) { - joiner.add(String.format("%sfieldQueueID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldQueueID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `queueDate` to the URL query string - if (getQueueDate() != null) { - joiner.add(String.format("%squeueDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getQueueDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `queueID` to the URL query string - if (getQueueID() != null) { - joiner.add(String.format("%squeueID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getQueueID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `queuePriority` to the URL query string - if (getQueuePriority() != null) { - joiner.add(String.format("%squeuePriority%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getQueuePriority()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/User1.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/User1.java deleted file mode 100644 index fd2239ad46..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/User1.java +++ /dev/null @@ -1,331 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.vcell.restclient.model.KeyValue; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * User1 - */ -@JsonPropertyOrder({ - User1.JSON_PROPERTY_USER_NAME, - User1.JSON_PROPERTY_KEY, - User1.JSON_PROPERTY_I_D, - User1.JSON_PROPERTY_NAME, - User1.JSON_PROPERTY_PUBLISHER, - User1.JSON_PROPERTY_TEST_ACCOUNT -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class User1 { - public static final String JSON_PROPERTY_USER_NAME = "userName"; - private String userName; - - public static final String JSON_PROPERTY_KEY = "key"; - private KeyValue key; - - public static final String JSON_PROPERTY_I_D = "iD"; - private KeyValue iD; - - public static final String JSON_PROPERTY_NAME = "name"; - private String name; - - public static final String JSON_PROPERTY_PUBLISHER = "publisher"; - private Boolean publisher; - - public static final String JSON_PROPERTY_TEST_ACCOUNT = "testAccount"; - private Boolean testAccount; - - public User1() { - } - - public User1 userName(String userName) { - this.userName = userName; - return this; - } - - /** - * Get userName - * @return userName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_USER_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getUserName() { - return userName; - } - - - @JsonProperty(JSON_PROPERTY_USER_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUserName(String userName) { - this.userName = userName; - } - - - public User1 key(KeyValue key) { - this.key = key; - return this; - } - - /** - * Get key - * @return key - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getKey() { - return key; - } - - - @JsonProperty(JSON_PROPERTY_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setKey(KeyValue key) { - this.key = key; - } - - - public User1 iD(KeyValue iD) { - this.iD = iD; - return this; - } - - /** - * Get iD - * @return iD - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getiD() { - return iD; - } - - - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setiD(KeyValue iD) { - this.iD = iD; - } - - - public User1 name(String name) { - this.name = name; - return this; - } - - /** - * Get name - * @return name - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getName() { - return name; - } - - - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setName(String name) { - this.name = name; - } - - - public User1 publisher(Boolean publisher) { - this.publisher = publisher; - return this; - } - - /** - * Get publisher - * @return publisher - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PUBLISHER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getPublisher() { - return publisher; - } - - - @JsonProperty(JSON_PROPERTY_PUBLISHER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPublisher(Boolean publisher) { - this.publisher = publisher; - } - - - public User1 testAccount(Boolean testAccount) { - this.testAccount = testAccount; - return this; - } - - /** - * Get testAccount - * @return testAccount - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TEST_ACCOUNT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getTestAccount() { - return testAccount; - } - - - @JsonProperty(JSON_PROPERTY_TEST_ACCOUNT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTestAccount(Boolean testAccount) { - this.testAccount = testAccount; - } - - - /** - * Return true if this User1 object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - User1 user1 = (User1) o; - return Objects.equals(this.userName, user1.userName) && - Objects.equals(this.key, user1.key) && - Objects.equals(this.iD, user1.iD) && - Objects.equals(this.name, user1.name) && - Objects.equals(this.publisher, user1.publisher) && - Objects.equals(this.testAccount, user1.testAccount); - } - - @Override - public int hashCode() { - return Objects.hash(userName, key, iD, name, publisher, testAccount); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class User1 {\n"); - sb.append(" userName: ").append(toIndentedString(userName)).append("\n"); - sb.append(" key: ").append(toIndentedString(key)).append("\n"); - sb.append(" iD: ").append(toIndentedString(iD)).append("\n"); - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" publisher: ").append(toIndentedString(publisher)).append("\n"); - sb.append(" testAccount: ").append(toIndentedString(testAccount)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `userName` to the URL query string - if (getUserName() != null) { - joiner.add(String.format("%suserName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUserName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `key` to the URL query string - if (getKey() != null) { - joiner.add(getKey().toUrlQueryString(prefix + "key" + suffix)); - } - - // add `iD` to the URL query string - if (getiD() != null) { - joiner.add(getiD().toUrlQueryString(prefix + "iD" + suffix)); - } - - // add `name` to the URL query string - if (getName() != null) { - joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `publisher` to the URL query string - if (getPublisher() != null) { - joiner.add(String.format("%spublisher%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getPublisher()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `testAccount` to the URL query string - if (getTestAccount() != null) { - joiner.add(String.format("%stestAccount%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTestAccount()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/UserIdentity.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/UserIdentity.java deleted file mode 100644 index 70675867da..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/UserIdentity.java +++ /dev/null @@ -1,260 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.math.BigDecimal; -import java.time.OffsetDateTime; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * UserIdentity - */ -@JsonPropertyOrder({ - UserIdentity.JSON_PROPERTY_ID, - UserIdentity.JSON_PROPERTY_USER_NAME, - UserIdentity.JSON_PROPERTY_SUBJECT, - UserIdentity.JSON_PROPERTY_INSERT_DATE -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class UserIdentity { - public static final String JSON_PROPERTY_ID = "id"; - private BigDecimal id; - - public static final String JSON_PROPERTY_USER_NAME = "userName"; - private String userName; - - public static final String JSON_PROPERTY_SUBJECT = "subject"; - private String subject; - - public static final String JSON_PROPERTY_INSERT_DATE = "insertDate"; - private OffsetDateTime insertDate; - - public UserIdentity() { - } - - public UserIdentity id(BigDecimal id) { - this.id = id; - return this; - } - - /** - * Get id - * @return id - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public BigDecimal getId() { - return id; - } - - - @JsonProperty(JSON_PROPERTY_ID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setId(BigDecimal id) { - this.id = id; - } - - - public UserIdentity userName(String userName) { - this.userName = userName; - return this; - } - - /** - * Get userName - * @return userName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_USER_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getUserName() { - return userName; - } - - - @JsonProperty(JSON_PROPERTY_USER_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUserName(String userName) { - this.userName = userName; - } - - - public UserIdentity subject(String subject) { - this.subject = subject; - return this; - } - - /** - * Get subject - * @return subject - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SUBJECT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getSubject() { - return subject; - } - - - @JsonProperty(JSON_PROPERTY_SUBJECT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSubject(String subject) { - this.subject = subject; - } - - - public UserIdentity insertDate(OffsetDateTime insertDate) { - this.insertDate = insertDate; - return this; - } - - /** - * Get insertDate - * @return insertDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_INSERT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public OffsetDateTime getInsertDate() { - return insertDate; - } - - - @JsonProperty(JSON_PROPERTY_INSERT_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setInsertDate(OffsetDateTime insertDate) { - this.insertDate = insertDate; - } - - - /** - * Return true if this UserIdentity object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - UserIdentity userIdentity = (UserIdentity) o; - return Objects.equals(this.id, userIdentity.id) && - Objects.equals(this.userName, userIdentity.userName) && - Objects.equals(this.subject, userIdentity.subject) && - Objects.equals(this.insertDate, userIdentity.insertDate); - } - - @Override - public int hashCode() { - return Objects.hash(id, userName, subject, insertDate); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class UserIdentity {\n"); - sb.append(" id: ").append(toIndentedString(id)).append("\n"); - sb.append(" userName: ").append(toIndentedString(userName)).append("\n"); - sb.append(" subject: ").append(toIndentedString(subject)).append("\n"); - sb.append(" insertDate: ").append(toIndentedString(insertDate)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `id` to the URL query string - if (getId() != null) { - joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `userName` to the URL query string - if (getUserName() != null) { - joiner.add(String.format("%suserName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getUserName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `subject` to the URL query string - if (getSubject() != null) { - joiner.add(String.format("%ssubject%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSubject()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `insertDate` to the URL query string - if (getInsertDate() != null) { - joiner.add(String.format("%sinsertDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getInsertDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VCellServerID.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VCellServerID.java deleted file mode 100644 index 994933ad5f..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/VCellServerID.java +++ /dev/null @@ -1,150 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * VCellServerID - */ -@JsonPropertyOrder({ - VCellServerID.JSON_PROPERTY_SERVER_I_D -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class VCellServerID { - public static final String JSON_PROPERTY_SERVER_I_D = "serverID"; - private String serverID; - - public VCellServerID() { - } - - public VCellServerID serverID(String serverID) { - this.serverID = serverID; - return this; - } - - /** - * Get serverID - * @return serverID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getServerID() { - return serverID; - } - - - @JsonProperty(JSON_PROPERTY_SERVER_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setServerID(String serverID) { - this.serverID = serverID; - } - - - /** - * Return true if this VCellServerID object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - VCellServerID vcellServerID = (VCellServerID) o; - return Objects.equals(this.serverID, vcellServerID.serverID); - } - - @Override - public int hashCode() { - return Objects.hash(serverID); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class VCellServerID {\n"); - sb.append(" serverID: ").append(toIndentedString(serverID)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `serverID` to the URL query string - if (getServerID() != null) { - joiner.add(String.format("%sserverID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getServerID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/BioModelResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/BioModelResourceApiTest.java index 82f73ca1ef..8832c66cf7 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/BioModelResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/BioModelResourceApiTest.java @@ -51,91 +51,6 @@ public void deleteBioModelTest() throws ApiException { // TODO: test validations } - /** - * Get the BioModel in BNGL format. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void getBioModelBNGLTest() throws ApiException { - String bioModelID = null; - - //api.getBioModelBNGL(bioModelID); - - // TODO: test validations - } - - /** - * Get the BioModels diagram. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void getBioModelDIAGRAMTest() throws ApiException { - String bioModelID = null; - - //api.getBioModelDIAGRAM(bioModelID); - - // TODO: test validations - } - - /** - * Get the BioModel in OMEX format. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void getBioModelOMEXTest() throws ApiException { - String bioModelID = null; - - //api.getBioModelOMEX(bioModelID); - - // TODO: test validations - } - - /** - * Get the BioModel in SBML format. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void getBioModelSBMLTest() throws ApiException { - String bioModelID = null; - - //api.getBioModelSBML(bioModelID); - - // TODO: test validations - } - - /** - * Get the BioModel in VCML format. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void getBioModelVCMLTest() throws ApiException { - String bioModelID = null; - - //api.getBioModelVCML(bioModelID); - - // TODO: test validations - } - /** * Get BioModel information in JSON format by ID. * diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java index 3fc3df6777..b041d8312d 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java @@ -17,9 +17,9 @@ import org.vcell.restclient.model.AnalyzedResultsFromFieldData; import org.vcell.restclient.model.ExternalDataIdentifier; import org.vcell.restclient.model.FieldDataDBOperationSpec; -import org.vcell.restclient.model.FieldDataExternalDataIDs; import org.vcell.restclient.model.FieldDataFileOperationSpec; import org.vcell.restclient.model.FieldDataNoCopyConflict; +import org.vcell.restclient.model.FieldDataReferences; import org.vcell.restclient.model.FieldDataSaveResults; import java.io.File; import org.junit.Test; @@ -128,7 +128,7 @@ public void generateFieldDataEstimateTest() throws ApiException { } /** - * Get all of the field data for that user. + * Get all of the ids used to identify, and retrieve field data. * * * @@ -136,10 +136,9 @@ public void generateFieldDataEstimateTest() throws ApiException { * if the Api call fails */ @Test - public void getAllFieldDataTest() throws ApiException { - FieldDataDBOperationSpec fieldDataDBOperationSpec = null; - FieldDataExternalDataIDs response = - api.getAllFieldData(fieldDataDBOperationSpec); + public void getAllFieldDataIDsTest() throws ApiException { + FieldDataReferences response = + api.getAllFieldDataIDs(); // TODO: test validations } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/HelloWorldApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/HelloWorldApiTest.java index 8725544ee8..7ed84545ad 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/HelloWorldApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/HelloWorldApiTest.java @@ -1,5 +1,5 @@ /* - * VCell API (test) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,14 +13,22 @@ package org.vcell.restclient.api; -import org.junit.jupiter.api.Test; import org.vcell.restclient.ApiException; import org.vcell.restclient.model.HelloWorldMessage; +import org.junit.Test; +import org.junit.Ignore; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; /** * API tests for HelloWorldApi */ +@Ignore public class HelloWorldApiTest { private final HelloWorldApi api = new HelloWorldApi(); diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/PublicationResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/PublicationResourceApiTest.java index ef2ce4713b..66d276eaa2 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/PublicationResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/PublicationResourceApiTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,54 +13,109 @@ package org.vcell.restclient.api; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; import org.vcell.restclient.ApiException; import org.vcell.restclient.model.Publication; +import org.junit.Test; +import org.junit.Ignore; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Set; /** * API tests for PublicationResourceApi */ -@Disabled -@Tag("Fast") +@Ignore public class PublicationResourceApiTest { private final PublicationResourceApi api = new PublicationResourceApi(); + /** + * Create publication + * + * + * + * @throws ApiException + * if the Api call fails + */ @Test - public void getPublicationByIdTest() throws ApiException { - Long key = null; - api.getPublicationById(key); + public void createPublicationTest() throws ApiException { + Publication publication = null; + Long response = + api.createPublication(publication); // TODO: test validations } + /** + * Delete publication + * + * + * + * @throws ApiException + * if the Api call fails + */ @Test - public void getPublicationsTest() throws ApiException { - List response = api.getPublications(); + public void deletePublicationTest() throws ApiException { + Long id = null; + + api.deletePublication(id); // TODO: test validations } - + + /** + * Get publication by ID + * + * + * + * @throws ApiException + * if the Api call fails + */ @Test - public void addPublicationTest() throws ApiException { - Publication publication = null; - api.createPublication(publication); - + public void getPublicationByIdTest() throws ApiException { + Long id = null; + Publication response = + api.getPublicationById(id); + // TODO: test validations } - + + /** + * Get all publications + * + * + * + * @throws ApiException + * if the Api call fails + */ @Test - public void deletePublicationTest() throws ApiException { - Long publication_key = null; - api.deletePublication(publication_key); - + public void getPublicationsTest() throws ApiException { + List response = + api.getPublications(); + // TODO: test validations } - + + /** + * Create publication + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void updatePublicationTest() throws ApiException { + Publication publication = null; + Publication response = + api.updatePublication(publication); + + // TODO: test validations + } + } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/SimulationResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/SimulationResourceApiTest.java index ded45fa88d..90388c0d70 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/SimulationResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/SimulationResourceApiTest.java @@ -14,7 +14,8 @@ package org.vcell.restclient.api; import org.vcell.restclient.ApiException; -import org.vcell.restclient.model.OverrideRepresentation; +import org.vcell.restclient.model.SimulationStatusPersistentRecord; +import org.vcell.restclient.model.StatusMessage; import org.junit.Test; import org.junit.Ignore; @@ -32,6 +33,26 @@ public class SimulationResourceApiTest { private final SimulationResourceApi api = new SimulationResourceApi(); + + + /** + * Get the status of simulation running + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void getSimulationStatusTest() throws ApiException { + String simID = null; + String bioModelID = null; + String mathModelID = null; + SimulationStatusPersistentRecord response = + api.getSimulationStatus(simID, bioModelID, mathModelID); + + // TODO: test validations + } /** * Start a simulation. @@ -44,7 +65,7 @@ public class SimulationResourceApiTest { @Test public void startSimulationTest() throws ApiException { String simID = null; - + List response = api.startSimulation(simID); // TODO: test validations @@ -61,7 +82,7 @@ public void startSimulationTest() throws ApiException { @Test public void stopSimulationTest() throws ApiException { String simID = null; - + List response = api.stopSimulation(simID); // TODO: test validations diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/UsersResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/UsersResourceApiTest.java index b0cbe52a66..d1d4d11fed 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/UsersResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/UsersResourceApiTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,27 +13,99 @@ package org.vcell.restclient.api; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; import org.vcell.restclient.ApiException; +import org.vcell.restclient.model.AccesTokenRepresentationRecord; import org.vcell.restclient.model.Identity; -import org.vcell.restclient.model.User; +import org.vcell.restclient.model.UserIdentityJSONSafe; +import org.vcell.restclient.model.UserLoginInfoForMapping; +import org.vcell.restclient.model.UserRegistrationInfo; +import org.junit.Test; +import org.junit.Ignore; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; /** * API tests for UsersResourceApi */ -@Disabled -@Tag("Fast") +@Ignore public class UsersResourceApiTest { private final UsersResourceApi api = new UsersResourceApi(); /** + * The end user has forgotten the legacy password they used for VCell, so they will be emailed it. + * * * + * @throws ApiException + * if the Api call fails + */ + @Test + public void forgotLegacyPasswordTest() throws ApiException { + String userID = null; + + api.forgotLegacyPassword(userID); + + // TODO: test validations + } + + /** + * Method to get legacy tokens for guest users + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void getGuestLegacyApiTokenTest() throws ApiException { + AccesTokenRepresentationRecord response = + api.getGuestLegacyApiToken(); + + // TODO: test validations + } + + /** + * Get token for legacy API + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void getLegacyApiTokenTest() throws ApiException { + AccesTokenRepresentationRecord response = + api.getLegacyApiToken(); + + // TODO: test validations + } + + /** + * Get mapped VCell identity + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void getMappedUserTest() throws ApiException { + UserIdentityJSONSafe response = + api.getMappedUser(); + + // TODO: test validations + } + + /** + * Get current user + * * * * @throws ApiException @@ -41,10 +113,96 @@ public class UsersResourceApiTest { */ @Test public void getMeTest() throws ApiException { - Identity response = + Identity response = api.getMe(); // TODO: test validations } + /** + * create vcell user + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void mapNewUserTest() throws ApiException { + UserRegistrationInfo userRegistrationInfo = null; + + api.mapNewUser(userRegistrationInfo); + + // TODO: test validations + } + + /** + * map vcell user + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void mapUserTest() throws ApiException { + UserLoginInfoForMapping userLoginInfoForMapping = null; + Boolean response = + api.mapUser(userLoginInfoForMapping); + + // TODO: test validations + } + + /** + * Process the magic link and map the user + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void processMagicLinkTest() throws ApiException { + String magic = null; + + api.processMagicLink(magic); + + // TODO: test validations + } + + /** + * request a recovery email to link a VCell account. + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void requestRecoveryEmailTest() throws ApiException { + String email = null; + String userID = null; + + api.requestRecoveryEmail(email, userID); + + // TODO: test validations + } + + /** + * remove vcell identity mapping + * + * + * + * @throws ApiException + * if the Api call fails + */ + @Test + public void unmapUserTest() throws ApiException { + String userName = null; + Boolean response = + api.unmapUser(userName); + + // TODO: test validations + } + } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/AccessTokenRepresentationTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/AccessTokenRepresentationTest.java deleted file mode 100644 index b22fba0f2a..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/AccessTokenRepresentationTest.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for AccessTokenRepresentation - */ -public class AccessTokenRepresentationTest { - private final AccessTokenRepresentation model = new AccessTokenRepresentation(); - - /** - * Model tests for AccessTokenRepresentation - */ - @Test - public void testAccessTokenRepresentation() { - // TODO: test AccessTokenRepresentation - } - - /** - * Test the property 'token' - */ - @Test - public void tokenTest() { - // TODO: test token - } - - /** - * Test the property 'creationDateSeconds' - */ - @Test - public void creationDateSecondsTest() { - // TODO: test creationDateSeconds - } - - /** - * Test the property 'expireDateSeconds' - */ - @Test - public void expireDateSecondsTest() { - // TODO: test expireDateSeconds - } - - /** - * Test the property 'userId' - */ - @Test - public void userIdTest() { - // TODO: test userId - } - - /** - * Test the property 'userKey' - */ - @Test - public void userKeyTest() { - // TODO: test userKey - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/BioModelTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/BioModelTest.java index 3994c6e3b8..a0e5785a84 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/BioModelTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/BioModelTest.java @@ -21,7 +21,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import org.vcell.restclient.model.Simulation; +import org.vcell.restclient.model.KeyValue; import org.junit.Assert; import org.junit.Ignore; import org.junit.Test; @@ -97,11 +97,11 @@ public void branchIDTest() { } /** - * Test the property 'modelKey' + * Test the property 'physModelKey' */ @Test - public void modelKeyTest() { - // TODO: test modelKey + public void physModelKeyTest() { + // TODO: test physModelKey } /** @@ -121,11 +121,11 @@ public void ownerKeyTest() { } /** - * Test the property 'simulations' + * Test the property 'simulationKeyList' */ @Test - public void simulationsTest() { - // TODO: test simulations + public void simulationKeyListTest() { + // TODO: test simulationKeyList } /** diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/BiomodelRefTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/BiomodelRefTest.java index d447601abd..c39b85be8d 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/BiomodelRefTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/BiomodelRefTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,13 +13,19 @@ package org.vcell.restclient.model; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; /** * Model tests for BiomodelRef */ -@Tag("Fast") public class BiomodelRefTest { private final BiomodelRef model = new BiomodelRef(); diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/User1Test.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/DataIdentifierTest.java similarity index 50% rename from vcell-restclient/src/test/java/org/vcell/restclient/model/User1Test.java rename to vcell-restclient/src/test/java/org/vcell/restclient/model/DataIdentifierTest.java index d25d8a58e1..502c54e3a0 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/User1Test.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/DataIdentifierTest.java @@ -19,71 +19,80 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import java.util.Arrays; -import org.vcell.restclient.model.KeyValue; +import org.vcell.restclient.model.Domain; +import org.vcell.restclient.model.VariableType; import org.junit.Assert; import org.junit.Ignore; import org.junit.Test; /** - * Model tests for User1 + * Model tests for DataIdentifier */ -public class User1Test { - private final User1 model = new User1(); +public class DataIdentifierTest { + private final DataIdentifier model = new DataIdentifier(); /** - * Model tests for User1 + * Model tests for DataIdentifier */ @Test - public void testUser1() { - // TODO: test User1 + public void testDataIdentifier() { + // TODO: test DataIdentifier } /** - * Test the property 'userName' + * Test the property 'name' */ @Test - public void userNameTest() { - // TODO: test userName + public void nameTest() { + // TODO: test name } /** - * Test the property 'key' + * Test the property 'displayName' */ @Test - public void keyTest() { - // TODO: test key + public void displayNameTest() { + // TODO: test displayName } /** - * Test the property 'iD' + * Test the property 'variableType' */ @Test - public void iDTest() { - // TODO: test iD + public void variableTypeTest() { + // TODO: test variableType } /** - * Test the property 'name' + * Test the property 'domain' */ @Test - public void nameTest() { - // TODO: test name + public void domainTest() { + // TODO: test domain + } + + /** + * Test the property 'bFunction' + */ + @Test + public void bFunctionTest() { + // TODO: test bFunction } /** - * Test the property 'publisher' + * Test the property 'function' */ @Test - public void publisherTest() { - // TODO: test publisher + public void functionTest() { + // TODO: test function } /** - * Test the property 'testAccount' + * Test the property 'visible' */ @Test - public void testAccountTest() { - // TODO: test testAccount + public void visibleTest() { + // TODO: test visible } } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/DomainTest.java similarity index 79% rename from vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationTest.java rename to vcell-restclient/src/test/java/org/vcell/restclient/model/DomainTest.java index d9533db481..d661e5e75d 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/DomainTest.java @@ -24,17 +24,17 @@ import org.junit.Test; /** - * Model tests for Simulation + * Model tests for Domain */ -public class SimulationTest { - private final Simulation model = new Simulation(); +public class DomainTest { + private final Domain model = new Domain(); /** - * Model tests for Simulation + * Model tests for Domain */ @Test - public void testSimulation() { - // TODO: test Simulation + public void testDomain() { + // TODO: test Domain } /** diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/OverrideRepresentationTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java similarity index 52% rename from vcell-restclient/src/test/java/org/vcell/restclient/model/OverrideRepresentationTest.java rename to vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java index 848aea36ce..9b861abde9 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/OverrideRepresentationTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java @@ -21,62 +21,57 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; import org.junit.Assert; import org.junit.Ignore; import org.junit.Test; /** - * Model tests for OverrideRepresentation + * Model tests for FieldDataInfo */ -public class OverrideRepresentationTest { - private final OverrideRepresentation model = new OverrideRepresentation(); +public class FieldDataInfoTest { + private final FieldDataInfo model = new FieldDataInfo(); /** - * Model tests for OverrideRepresentation + * Model tests for FieldDataInfo */ @Test - public void testOverrideRepresentation() { - // TODO: test OverrideRepresentation + public void testFieldDataInfo() { + // TODO: test FieldDataInfo } /** - * Test the property 'name' + * Test the property 'extent' */ @Test - public void nameTest() { - // TODO: test name + public void extentTest() { + // TODO: test extent } /** - * Test the property 'type' + * Test the property 'origin' */ @Test - public void typeTest() { - // TODO: test type + public void originTest() { + // TODO: test origin } /** - * Test the property 'expression' + * Test the property 'isize' */ @Test - public void expressionTest() { - // TODO: test expression + public void isizeTest() { + // TODO: test isize } /** - * Test the property 'values' + * Test the property 'times' */ @Test - public void valuesTest() { - // TODO: test values - } - - /** - * Test the property 'cardinality' - */ - @Test - public void cardinalityTest() { - // TODO: test cardinality + public void timesTest() { + // TODO: test times } } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java similarity index 50% rename from vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityTest.java rename to vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java index d8414e43ab..8468e879f5 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java @@ -18,58 +18,53 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; +import java.util.ArrayList; import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.vcell.restclient.model.ExternalDataIdentifier; import org.vcell.restclient.model.KeyValue; -import org.vcell.restclient.model.User1; import org.junit.Assert; import org.junit.Ignore; import org.junit.Test; /** - * Model tests for UserIdentity + * Model tests for FieldDataReferences */ -public class UserIdentityTest { - private final UserIdentity model = new UserIdentity(); +public class FieldDataReferencesTest { + private final FieldDataReferences model = new FieldDataReferences(); /** - * Model tests for UserIdentity + * Model tests for FieldDataReferences */ @Test - public void testUserIdentity() { - // TODO: test UserIdentity + public void testFieldDataReferences() { + // TODO: test FieldDataReferences } /** - * Test the property 'id' + * Test the property 'externalDataIdentifiers' */ @Test - public void idTest() { - // TODO: test id + public void externalDataIdentifiersTest() { + // TODO: test externalDataIdentifiers } /** - * Test the property 'user' + * Test the property 'externalDataAnnotations' */ @Test - public void userTest() { - // TODO: test user + public void externalDataAnnotationsTest() { + // TODO: test externalDataAnnotations } /** - * Test the property 'subject' + * Test the property 'externalDataIDSimRefs' */ @Test - public void subjectTest() { - // TODO: test subject - } - - /** - * Test the property 'insertDate' - */ - @Test - public void insertDateTest() { - // TODO: test insertDate + public void externalDataIDSimRefsTest() { + // TODO: test externalDataIDSimRefs } } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java index 8f86d6de29..ddcc1343fe 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java @@ -1,5 +1,5 @@ /* - * VCell API (test) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,7 +13,16 @@ package org.vcell.restclient.model; -import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + /** * Model tests for HelloWorldMessage */ diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/IdentityProviderTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/IdentityProviderTest.java deleted file mode 100644 index 81d8f7cdcd..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/IdentityProviderTest.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for IdentityProvider - */ -public class IdentityProviderTest { - /** - * Model tests for IdentityProvider - */ - @Test - public void testIdentityProvider() { - // TODO: test IdentityProvider - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/MapUserTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/MapUserTest.java deleted file mode 100644 index f4345accf8..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/MapUserTest.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * VCell API (development) - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for MapUser - */ -public class MapUserTest { - private final MapUser model = new MapUser(); - - /** - * Model tests for MapUser - */ - @Test - public void testMapUser() { - // TODO: test MapUser - } - - /** - * Test the property 'userID' - */ - @Test - public void userIDTest() { - // TODO: test userID - } - - /** - * Test the property 'password' - */ - @Test - public void passwordTest() { - // TODO: test password - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/MathmodelRefTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/MathmodelRefTest.java index d64918e60f..7a2507b3da 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/MathmodelRefTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/MathmodelRefTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,14 +13,19 @@ package org.vcell.restclient.model; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; - +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; /** * Model tests for MathmodelRef */ -@Tag("Fast") public class MathmodelRefTest { private final MathmodelRef model = new MathmodelRef(); diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/PublicationTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/PublicationTest.java index d79dd2bdd0..c1d0641c15 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/PublicationTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/PublicationTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,14 +13,24 @@ package org.vcell.restclient.model; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; - +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.time.LocalDate; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.BiomodelRef; +import org.vcell.restclient.model.MathmodelRef; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; /** * Model tests for Publication */ -@Tag("Fast") public class PublicationTest { private final Publication model = new Publication(); diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationExecutionStatusTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationExecutionStatusTest.java deleted file mode 100644 index dbd1c21ce8..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationExecutionStatusTest.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.HtcJobID; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for SimulationExecutionStatus - */ -public class SimulationExecutionStatusTest { - private final SimulationExecutionStatus model = new SimulationExecutionStatus(); - - /** - * Model tests for SimulationExecutionStatus - */ - @Test - public void testSimulationExecutionStatus() { - // TODO: test SimulationExecutionStatus - } - - /** - * Test the property 'fieldStartDate' - */ - @Test - public void fieldStartDateTest() { - // TODO: test fieldStartDate - } - - /** - * Test the property 'fieldLatestUpdateDate' - */ - @Test - public void fieldLatestUpdateDateTest() { - // TODO: test fieldLatestUpdateDate - } - - /** - * Test the property 'fieldEndDate' - */ - @Test - public void fieldEndDateTest() { - // TODO: test fieldEndDate - } - - /** - * Test the property 'fieldComputeHost' - */ - @Test - public void fieldComputeHostTest() { - // TODO: test fieldComputeHost - } - - /** - * Test the property 'fieldHasData' - */ - @Test - public void fieldHasDataTest() { - // TODO: test fieldHasData - } - - /** - * Test the property 'fieldHtcJobID' - */ - @Test - public void fieldHtcJobIDTest() { - // TODO: test fieldHtcJobID - } - - /** - * Test the property 'computeHost' - */ - @Test - public void computeHostTest() { - // TODO: test computeHost - } - - /** - * Test the property 'endDate' - */ - @Test - public void endDateTest() { - // TODO: test endDate - } - - /** - * Test the property 'latestUpdateDate' - */ - @Test - public void latestUpdateDateTest() { - // TODO: test latestUpdateDate - } - - /** - * Test the property 'startDate' - */ - @Test - public void startDateTest() { - // TODO: test startDate - } - - /** - * Test the property 'htcJobID' - */ - @Test - public void htcJobIDTest() { - // TODO: test htcJobID - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java index cbcc48b0a8..df84352f49 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java @@ -18,12 +18,12 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; +import java.time.OffsetDateTime; import java.util.Arrays; import org.vcell.restclient.model.SchedulerStatus; -import org.vcell.restclient.model.SimulationExecutionStatus; +import org.vcell.restclient.model.SimulationExecutionStatusRecord; import org.vcell.restclient.model.SimulationMessage; -import org.vcell.restclient.model.SimulationQueueEntryStatus; +import org.vcell.restclient.model.SimulationQueueEntryStatusRecord; import org.vcell.restclient.model.VCSimulationIdentifier; import org.junit.Assert; import org.junit.Ignore; diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusTest.java deleted file mode 100644 index 4fe456fe92..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationJobStatusTest.java +++ /dev/null @@ -1,231 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.SchedulerStatus; -import org.vcell.restclient.model.SimulationExecutionStatus; -import org.vcell.restclient.model.SimulationMessage; -import org.vcell.restclient.model.SimulationQueueEntryStatus; -import org.vcell.restclient.model.VCSimulationIdentifier; -import org.vcell.restclient.model.VCellServerID; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for SimulationJobStatus - */ -public class SimulationJobStatusTest { - private final SimulationJobStatus model = new SimulationJobStatus(); - - /** - * Model tests for SimulationJobStatus - */ - @Test - public void testSimulationJobStatus() { - // TODO: test SimulationJobStatus - } - - /** - * Test the property 'fieldTimeDateStamp' - */ - @Test - public void fieldTimeDateStampTest() { - // TODO: test fieldTimeDateStamp - } - - /** - * Test the property 'fieldVCSimID' - */ - @Test - public void fieldVCSimIDTest() { - // TODO: test fieldVCSimID - } - - /** - * Test the property 'fieldSubmitDate' - */ - @Test - public void fieldSubmitDateTest() { - // TODO: test fieldSubmitDate - } - - /** - * Test the property 'fieldSchedulerStatus' - */ - @Test - public void fieldSchedulerStatusTest() { - // TODO: test fieldSchedulerStatus - } - - /** - * Test the property 'fieldTaskID' - */ - @Test - public void fieldTaskIDTest() { - // TODO: test fieldTaskID - } - - /** - * Test the property 'fieldSimulationMessage' - */ - @Test - public void fieldSimulationMessageTest() { - // TODO: test fieldSimulationMessage - } - - /** - * Test the property 'fieldServerID' - */ - @Test - public void fieldServerIDTest() { - // TODO: test fieldServerID - } - - /** - * Test the property 'fieldJobIndex' - */ - @Test - public void fieldJobIndexTest() { - // TODO: test fieldJobIndex - } - - /** - * Test the property 'fieldSimulationQueueEntryStatus' - */ - @Test - public void fieldSimulationQueueEntryStatusTest() { - // TODO: test fieldSimulationQueueEntryStatus - } - - /** - * Test the property 'fieldSimulationExecutionStatus' - */ - @Test - public void fieldSimulationExecutionStatusTest() { - // TODO: test fieldSimulationExecutionStatus - } - - /** - * Test the property 'computeHost' - */ - @Test - public void computeHostTest() { - // TODO: test computeHost - } - - /** - * Test the property 'endDate' - */ - @Test - public void endDateTest() { - // TODO: test endDate - } - - /** - * Test the property 'jobIndex' - */ - @Test - public void jobIndexTest() { - // TODO: test jobIndex - } - - /** - * Test the property 'schedulerStatus' - */ - @Test - public void schedulerStatusTest() { - // TODO: test schedulerStatus - } - - /** - * Test the property 'serverID' - */ - @Test - public void serverIDTest() { - // TODO: test serverID - } - - /** - * Test the property 'simulationExecutionStatus' - */ - @Test - public void simulationExecutionStatusTest() { - // TODO: test simulationExecutionStatus - } - - /** - * Test the property 'simulationQueueEntryStatus' - */ - @Test - public void simulationQueueEntryStatusTest() { - // TODO: test simulationQueueEntryStatus - } - - /** - * Test the property 'startDate' - */ - @Test - public void startDateTest() { - // TODO: test startDate - } - - /** - * Test the property 'simulationMessage' - */ - @Test - public void simulationMessageTest() { - // TODO: test simulationMessage - } - - /** - * Test the property 'submitDate' - */ - @Test - public void submitDateTest() { - // TODO: test submitDate - } - - /** - * Test the property 'taskID' - */ - @Test - public void taskIDTest() { - // TODO: test taskID - } - - /** - * Test the property 'timeDateStamp' - */ - @Test - public void timeDateStampTest() { - // TODO: test timeDateStamp - } - - /** - * Test the property 'vCSimulationIdentifier' - */ - @Test - public void vCSimulationIdentifierTest() { - // TODO: test vCSimulationIdentifier - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusTest.java deleted file mode 100644 index ec0f091914..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusTest.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.SimulationQueueID; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for SimulationQueueEntryStatus - */ -public class SimulationQueueEntryStatusTest { - private final SimulationQueueEntryStatus model = new SimulationQueueEntryStatus(); - - /** - * Model tests for SimulationQueueEntryStatus - */ - @Test - public void testSimulationQueueEntryStatus() { - // TODO: test SimulationQueueEntryStatus - } - - /** - * Test the property 'fieldQueuePriority' - */ - @Test - public void fieldQueuePriorityTest() { - // TODO: test fieldQueuePriority - } - - /** - * Test the property 'fieldQueueDate' - */ - @Test - public void fieldQueueDateTest() { - // TODO: test fieldQueueDate - } - - /** - * Test the property 'fieldQueueID' - */ - @Test - public void fieldQueueIDTest() { - // TODO: test fieldQueueID - } - - /** - * Test the property 'queueDate' - */ - @Test - public void queueDateTest() { - // TODO: test queueDate - } - - /** - * Test the property 'queueID' - */ - @Test - public void queueIDTest() { - // TODO: test queueID - } - - /** - * Test the property 'queuePriority' - */ - @Test - public void queuePriorityTest() { - // TODO: test queuePriority - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java index 4d6028633a..b8fe9ffc87 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java @@ -19,8 +19,6 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; import org.vcell.restclient.model.Status; import org.junit.Assert; import org.junit.Ignore; @@ -48,14 +46,6 @@ public void statusTest() { // TODO: test status } - /** - * Test the property 'progressHash' - */ - @Test - public void progressHashTest() { - // TODO: test progressHash - } - /** * Test the property 'details' */ diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/StatusMessageTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/StatusMessageTest.java index bfc18974a8..0e52b4f297 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/StatusMessageTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/StatusMessageTest.java @@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import java.util.Arrays; -import org.vcell.restclient.model.SimulationJobStatus; +import org.vcell.restclient.model.SimulationJobStatusRecord; import org.junit.Assert; import org.junit.Ignore; import org.junit.Test; diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java index 1002084cfd..15131fa3e7 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java @@ -38,6 +38,14 @@ public void testUserIdentityJSONSafe() { // TODO: test UserIdentityJSONSafe } + /** + * Test the property 'mapped' + */ + @Test + public void mappedTest() { + // TODO: test mapped + } + /** * Test the property 'userName' */ diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java index 9446b139ff..938e723802 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -46,11 +46,11 @@ public void userIDTest() { } /** - * Test the property 'digestedPassword' + * Test the property 'password' */ @Test - public void digestedPasswordTest() { - // TODO: test digestedPassword + public void passwordTest() { + // TODO: test password } } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java index 10de75e90d..6d92662ce2 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java @@ -1,5 +1,5 @@ /* - * VCell API (development) + * VCell API * VCell API * * The version of the OpenAPI document: 1.0.1 @@ -13,14 +13,20 @@ package org.vcell.restclient.model; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.api.Test; - +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.Arrays; +import org.vcell.restclient.model.KeyValue; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; /** * Model tests for User */ -@Tag("Fast") public class UserTest { private final User model = new User(); @@ -40,4 +46,36 @@ public void userNameTest() { // TODO: test userName } + /** + * Test the property 'key' + */ + @Test + public void keyTest() { + // TODO: test key + } + + /** + * Test the property 'iD' + */ + @Test + public void iDTest() { + // TODO: test iD + } + + /** + * Test the property 'name' + */ + @Test + public void nameTest() { + // TODO: test name + } + + /** + * Test the property 'testAccount' + */ + @Test + public void testAccountTest() { + // TODO: test testAccount + } + } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VCellServerIDTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VCellServerIDTest.java deleted file mode 100644 index e842989964..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/VCellServerIDTest.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for VCellServerID - */ -public class VCellServerIDTest { - private final VCellServerID model = new VCellServerID(); - - /** - * Model tests for VCellServerID - */ - @Test - public void testVCellServerID() { - // TODO: test VCellServerID - } - - /** - * Test the property 'serverID' - */ - @Test - public void serverIDTest() { - // TODO: test serverID - } - -} diff --git a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES index e1463b70d4..0411468fd2 100644 --- a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES +++ b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES @@ -27,13 +27,16 @@ model/bio-model.ts model/biomodel-ref.ts model/cartesian-mesh.ts model/coordinate.ts +model/data-identifier.ts model/detailed-state.ts +model/domain.ts model/extent.ts model/external-data-identifier.ts model/field-data-db-operation-spec.ts -model/field-data-external-data-ids.ts model/field-data-file-operation-spec.ts +model/field-data-info.ts model/field-data-no-copy-conflict.ts +model/field-data-references.ts model/field-data-save-results.ts model/group-access.ts model/hello-world-message.ts diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts index 901da8fa6c..86a4ee3c99 100644 --- a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts @@ -25,12 +25,14 @@ import { ExternalDataIdentifier } from '../model/external-data-identifier'; // @ts-ignore import { FieldDataDBOperationSpec } from '../model/field-data-db-operation-spec'; // @ts-ignore -import { FieldDataExternalDataIDs } from '../model/field-data-external-data-ids'; -// @ts-ignore import { FieldDataFileOperationSpec } from '../model/field-data-file-operation-spec'; // @ts-ignore +import { FieldDataInfo } from '../model/field-data-info'; +// @ts-ignore import { FieldDataNoCopyConflict } from '../model/field-data-no-copy-conflict'; // @ts-ignore +import { FieldDataReferences } from '../model/field-data-references'; +// @ts-ignore import { FieldDataSaveResults } from '../model/field-data-save-results'; // @ts-ignore @@ -444,7 +446,7 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } } - let localVarPath = `/api/v1/fieldData/createFieldDataFromFile`; + let localVarPath = `/api/v1/fieldData/analyzeFieldDataFromFile`; return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, @@ -459,15 +461,69 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } /** - * Get all of the field data for that user. - * @param fieldDataDBOperationSpec + * Get all of the ids used to identify, and retrieve field data. + * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. + * @param reportProgress flag to report request and response progress. + */ + public getAllFieldDataIDs(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public getAllFieldDataIDs(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldDataIDs(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldDataIDs(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + + let localVarHeaders = this.defaultHeaders; + + let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; + if (localVarHttpHeaderAcceptSelected === undefined) { + // to determine the Accept header + const httpHeaderAccepts: string[] = [ + 'application/json' + ]; + localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); + } + if (localVarHttpHeaderAcceptSelected !== undefined) { + localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + } + + let localVarHttpContext: HttpContext | undefined = options && options.context; + if (localVarHttpContext === undefined) { + localVarHttpContext = new HttpContext(); + } + + + let responseType_: 'text' | 'json' | 'blob' = 'json'; + if (localVarHttpHeaderAcceptSelected) { + if (localVarHttpHeaderAcceptSelected.startsWith('text')) { + responseType_ = 'text'; + } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { + responseType_ = 'json'; + } else { + responseType_ = 'blob'; + } + } + + let localVarPath = `/api/v1/fieldData/IDs`; + return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, + { + context: localVarHttpContext, + responseType: responseType_, + withCredentials: this.configuration.withCredentials, + headers: localVarHeaders, + observe: observe, + reportProgress: reportProgress + } + ); + } + + /** + * Get the field data from the selected field data ID. + * @param body * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + public getFieldDataFromID(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public getFieldDataFromID(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getFieldDataFromID(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getFieldDataFromID(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { let localVarHeaders = this.defaultHeaders; @@ -491,7 +547,7 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa // to determine the Content-Type header const consumes: string[] = [ - 'application/json' + 'text/plain' ]; const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); if (httpContentTypeSelected !== undefined) { @@ -510,10 +566,10 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } let localVarPath = `/api/v1/fieldData`; - return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, + return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, - body: fieldDataDBOperationSpec, + body: body, responseType: responseType_, withCredentials: this.configuration.withCredentials, headers: localVarHeaders, diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts index b43e07663f..10e8d4734c 100644 --- a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts @@ -16,9 +16,10 @@ import { Observable } from 'rxjs'; import { AnalyzedResultsFromFieldData } from '../model/models'; import { ExternalDataIdentifier } from '../model/models'; import { FieldDataDBOperationSpec } from '../model/models'; -import { FieldDataExternalDataIDs } from '../model/models'; import { FieldDataFileOperationSpec } from '../model/models'; +import { FieldDataInfo } from '../model/models'; import { FieldDataNoCopyConflict } from '../model/models'; +import { FieldDataReferences } from '../model/models'; import { FieldDataSaveResults } from '../model/models'; @@ -67,10 +68,16 @@ export interface FieldDataResourceServiceInterface { generateFieldDataEstimate(file?: Blob, fileName?: string, extraHttpRequestParams?: any): Observable; /** - * Get all of the field data for that user. + * Get all of the ids used to identify, and retrieve field data. * - * @param fieldDataDBOperationSpec */ - getAllFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + getAllFieldDataIDs(extraHttpRequestParams?: any): Observable; + + /** + * Get the field data from the selected field data ID. + * + * @param body + */ + getFieldDataFromID(body?: string, extraHttpRequestParams?: any): Observable; } diff --git a/webapp-ng/src/app/core/modules/openapi/model/data-identifier.ts b/webapp-ng/src/app/core/modules/openapi/model/data-identifier.ts new file mode 100644 index 0000000000..f800f3169a --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/data-identifier.ts @@ -0,0 +1,25 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { VariableType } from './variable-type'; +import { Domain } from './domain'; + + +export interface DataIdentifier { + name?: string; + displayName?: string; + variableType?: VariableType; + domain?: Domain; + bFunction?: boolean; + _function?: boolean; + visible?: boolean; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/domain.ts b/webapp-ng/src/app/core/modules/openapi/model/domain.ts new file mode 100644 index 0000000000..e2aafb28e5 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/domain.ts @@ -0,0 +1,17 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface Domain { + name?: string; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts new file mode 100644 index 0000000000..976e4bfd83 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts @@ -0,0 +1,29 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { FieldDataReferenceInfo } from './field-data-reference-info'; +import { Origin } from './origin'; +import { DataIdentifier } from './data-identifier'; +import { Extent } from './extent'; +import { ISize } from './i-size'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataFileOperationResults { + dataIdentifierArr?: Array; + externalDataIdentifier?: ExternalDataIdentifier; + iSize?: ISize; + origin?: Origin; + extent?: Extent; + times?: Array; + dependantFunctionInfo?: Array; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts new file mode 100644 index 0000000000..25ace3c17f --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts @@ -0,0 +1,25 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Origin } from './origin'; +import { DataIdentifier } from './data-identifier'; +import { Extent } from './extent'; +import { ISize } from './i-size'; + + +export interface FieldDataInfo { + extent?: Extent; + origin?: Origin; + isize?: ISize; + dataIdentifier?: Array; + times?: Array; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts new file mode 100644 index 0000000000..22e40b3ca2 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts @@ -0,0 +1,24 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; + + +export interface FieldDataReferenceInfo { + referenceSourceType?: string; + referenceSourceName?: string; + applicationName?: string; + simulationName?: string; + refSourceVersionDate?: string; + funcNames?: Array; + refSourceVersionKey?: KeyValue; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts new file mode 100644 index 0000000000..58acf5cfa4 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts @@ -0,0 +1,21 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataReferences { + externalDataIdentifiers?: Array; + externalDataAnnotations?: Array; + externalDataIDSimRefs?: { [key: string]: Array; }; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/models.ts b/webapp-ng/src/app/core/modules/openapi/model/models.ts index 72b948e2c2..24482e7a15 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/models.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/models.ts @@ -5,13 +5,16 @@ export * from './bio-model'; export * from './biomodel-ref'; export * from './cartesian-mesh'; export * from './coordinate'; +export * from './data-identifier'; export * from './detailed-state'; +export * from './domain'; export * from './extent'; export * from './external-data-identifier'; export * from './field-data-db-operation-spec'; -export * from './field-data-external-data-ids'; export * from './field-data-file-operation-spec'; +export * from './field-data-info'; export * from './field-data-no-copy-conflict'; +export * from './field-data-references'; export * from './field-data-save-results'; export * from './group-access'; export * from './hello-world-message'; diff --git a/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts b/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts new file mode 100644 index 0000000000..5b2dd937cb --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts @@ -0,0 +1,27 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Origin } from './origin'; +import { Extent } from './extent'; +import { ISize } from './i-size'; + + +export interface SaveFieldDataFromFile { + shortSpecData?: Array>>; + varNames?: Array; + times?: Array; + origin?: Origin; + extent?: Extent; + isize?: ISize; + annotation?: string; + name?: string; +} + From a9f27166bcb3f8cecbb66b1be8ba9b9a2d2ec7d6 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 23 Dec 2024 17:28:34 -0500 Subject: [PATCH 14/37] Add Tests For The Field Data Endpoint --- .../restq/handlers/FieldData/FieldDataDB.java | 7 +- .../handlers/FieldData/FieldDataResource.java | 6 +- .../restq/apiclient/FieldDataAPITest.java | 152 ++++++++++++++++++ 3 files changed, 163 insertions(+), 2 deletions(-) create mode 100644 vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index 99efa94155..5245045590 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -10,6 +10,7 @@ import cbit.vcell.geometry.RegionImage; import cbit.vcell.math.VariableType; import cbit.vcell.modeldb.DatabaseServerImpl; +import cbit.vcell.resource.PropertyLoader; import cbit.vcell.simdata.DataSetControllerImpl; import cbit.vcell.solvers.CartesianMesh; import jakarta.enterprise.context.ApplicationScoped; @@ -38,7 +39,11 @@ public class FieldDataDB { @Inject public FieldDataDB(AgroalConnectionFactory agroalConnectionFactory) throws DataAccessException, FileNotFoundException { databaseServer = new DatabaseServerImpl(agroalConnectionFactory, agroalConnectionFactory.getKeyFactory()); - dataSetController = new DataSetControllerImpl(null, new File("/simdata"), new File("/simdata")); + String primarySimDataDir = PropertyLoader.getProperty(PropertyLoader.primarySimDataDirInternalProperty, "/simdata"); + String secondarySimDataDir = PropertyLoader.getProperty(PropertyLoader.secondarySimDataDirInternalProperty, "/simdata"); + dataSetController = new DataSetControllerImpl(null, + new File(primarySimDataDir), + new File(secondarySimDataDir)); } public FieldDataDBOperationResults copyNoConflict(User user, FieldDataDBOperationSpec spec) throws DataAccessException { diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index b16f4e4a27..de79ed47ed 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -26,6 +26,7 @@ import org.vcell.util.document.KeyValue; import org.vcell.util.document.User; +import java.io.FileNotFoundException; import java.io.InputStream; import java.sql.SQLException; import java.util.HashMap; @@ -73,7 +74,10 @@ public FieldDataInfo getFieldDataFromID(String fieldDataID){ FieldDataFileOperationResults results = fieldDataDB.getFieldDataFromID(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID, 0); return new FieldDataInfo(results.extent, results.origin, results.iSize, results.dataIdentifierArr,results.times); } catch (DataAccessException e) { - throw new WebApplicationException(e.getMessage(), 500); + if (e.getCause() instanceof FileNotFoundException){ + throw new WebApplicationException("Field data not found.", 404); + } + throw new WebApplicationException("Problem retrieving file.", 500); } } diff --git a/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java new file mode 100644 index 0000000000..4a1a89748e --- /dev/null +++ b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java @@ -0,0 +1,152 @@ +package org.vcell.restq.apiclient; + +import cbit.vcell.math.VariableType; +import cbit.vcell.resource.PropertyLoader; +import io.quarkus.test.junit.QuarkusTest; +import io.quarkus.test.keycloak.client.KeycloakTestClient; +import jakarta.inject.Inject; +import org.apache.commons.io.FileUtils; +import org.eclipse.microprofile.config.inject.ConfigProperty; +import org.junit.jupiter.api.*; +import org.vcell.restclient.ApiClient; +import org.vcell.restclient.ApiException; +import org.vcell.restclient.api.FieldDataResourceApi; +import org.vcell.restclient.api.UsersResourceApi; +import org.vcell.restclient.model.AnalyzedResultsFromFieldData; +import org.vcell.restclient.model.FieldDataInfo; +import org.vcell.restclient.model.FieldDataReferences; +import org.vcell.restclient.model.FieldDataSaveResults; +import org.vcell.restq.TestEndpointUtils; +import org.vcell.restq.config.CDIVCellConfigProvider; +import org.vcell.restq.db.AgroalConnectionFactory; +import org.vcell.util.*; +import org.vcell.util.document.KeyValue; + +import java.io.File; +import java.io.IOException; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +@QuarkusTest +public class FieldDataAPITest { + + @ConfigProperty(name = "quarkus.http.test-port") + Integer testPort; + + @Inject + AgroalConnectionFactory agroalConnectionFactory; + + KeycloakTestClient keycloakClient = new KeycloakTestClient(); + + private ApiClient aliceAPIClient; + private ApiClient bobAPIClient; + private static String previousPrimarySimDir; + private static String previousSecondarySimDir; + + private final static File temporaryFolder = new File(System.getProperty("java.io.tmpdir") + "/fieldDataTest"); + + @BeforeAll + public static void setupConfig(){ + PropertyLoader.setConfigProvider(new CDIVCellConfigProvider()); + } + + @BeforeEach + public void createClients() throws ApiException { + aliceAPIClient = TestEndpointUtils.createAuthenticatedAPIClient(keycloakClient, testPort, TestEndpointUtils.TestOIDCUsers.alice); + bobAPIClient = TestEndpointUtils.createAuthenticatedAPIClient(keycloakClient, testPort, TestEndpointUtils.TestOIDCUsers.bob); + UsersResourceApi usersResourceApi = new UsersResourceApi(aliceAPIClient); + usersResourceApi.mapUser(TestEndpointUtils.administratorUserLoginInfo); + + temporaryFolder.mkdirs(); + + previousPrimarySimDir = PropertyLoader.getProperty(PropertyLoader.primarySimDataDirInternalProperty, null); + PropertyLoader.setProperty(PropertyLoader.primarySimDataDirInternalProperty, temporaryFolder.getAbsolutePath()); + + previousSecondarySimDir = PropertyLoader.getProperty(PropertyLoader.secondarySimDataDirExternalProperty, null); + System.setProperty(PropertyLoader.secondarySimDataDirExternalProperty, temporaryFolder.getAbsolutePath()); + } + + @AfterEach + public void removeOIDCMappings() throws SQLException, DataAccessException, IOException { + TestEndpointUtils.removeAllMappings(agroalConnectionFactory); + if (previousPrimarySimDir != null){ + PropertyLoader.setProperty(PropertyLoader.primarySimDataDirInternalProperty, previousPrimarySimDir); + } + if (previousSecondarySimDir != null){ + System.setProperty(PropertyLoader.secondarySimDataDirExternalProperty, previousSecondarySimDir); + } + + FileUtils.cleanDirectory(temporaryFolder); + } + + + @Test + public void testAddAndDeleteFieldDataFromFile() throws ApiException { + FieldDataResourceApi fieldDataResourceApi = new FieldDataResourceApi(aliceAPIClient); + List>> matrix = new ArrayList<>(); + List varNames = new ArrayList<>(){{add("Variable 1");}}; + List times = new ArrayList<>(); times.add(0.0); times.add(1.0); + + double x = 5; + double y = 4; + double z = 3; + for (int t = 0; t < times.size(); t++){ + List> tArr = new ArrayList<>(); + for (int vars = 0; vars < varNames.size(); vars++){ + List vArr = new ArrayList<>(); + for (int i = 0; i < (x * y * z); i++){ + vArr.add(i); + } + tArr.add(vArr); + } + matrix.add(tArr); + } + VariableType varType = VariableType.getVariableTypeFromInteger(1); + Origin origin = new Origin(0.0, 0.0, 0.0); + Extent extent = new Extent(x, y, z); + ISize iSize = new ISize(1, 1, 1); + + ///////////////////// + // Add Field Data // + /////////////////// + AnalyzedResultsFromFieldData saveFieldDataFromFile = new AnalyzedResultsFromFieldData(); + saveFieldDataFromFile.setShortSpecData(matrix); saveFieldDataFromFile.varNames(varNames); + saveFieldDataFromFile.times(times); saveFieldDataFromFile.origin(Origin.originToDTO(origin)); saveFieldDataFromFile.extent(Extent.extentToDTO(extent)); + saveFieldDataFromFile.isize(ISize.iSizeToDTO(iSize)); saveFieldDataFromFile.annotation("test annotation"); saveFieldDataFromFile.name("TestFile"); + FieldDataSaveResults results = fieldDataResourceApi.createNewFieldDataFromFileAlreadyAnalyzed(saveFieldDataFromFile); + + // File is Saved on File System + FieldDataInfo fieldDataInfo = fieldDataResourceApi.getFieldDataFromID(results.getFieldDataID()); + Assertions.assertEquals(saveFieldDataFromFile.getName(), results.getFieldDataName()); + Assertions.assertTrue(origin.compareEqual(Origin.dtoToOrigin(fieldDataInfo.getOrigin()))); + Assertions.assertTrue(extent.compareEqual(Extent.dtoToExtent(fieldDataInfo.getExtent()))); + Assertions.assertTrue(iSize.compareEqual(ISize.dtoToISize(fieldDataInfo.getIsize()))); + Assertions.assertEquals(times, fieldDataInfo.getTimes()); + + // It's in the DB + FieldDataReferences references = fieldDataResourceApi.getAllFieldDataIDs(); + Assertions.assertEquals(saveFieldDataFromFile.getAnnotation(), references.getExternalDataAnnotations().get(0)); + Assertions.assertEquals(results.getFieldDataID(), references.getExternalDataIdentifiers().get(0).getKey().getValue().toString()); + Assertions.assertEquals(0, references.getExternalDataIDSimRefs().size()); + + /////////////////////// + // Delete Field Data // + ////////////////////// + fieldDataResourceApi.deleteFieldData(results.getFieldDataID()); + + // No Longer on File System + try{ + fieldDataResourceApi.getFieldDataFromID(results.getFieldDataID()); + } catch (ApiException e){ + Assertions.assertEquals(404, e.getCode()); + } + + // No Longer in DB + references = fieldDataResourceApi.getAllFieldDataIDs(); + Assertions.assertEquals(0, references.getExternalDataIdentifiers().size()); + Assertions.assertEquals(0, references.getExternalDataAnnotations().size()); + Assertions.assertEquals(0, references.getExternalDataIDSimRefs().size()); + } + +} From b66beab1b90ba0addee11c703470a549aa9c6b81 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 27 Dec 2024 09:44:14 -0500 Subject: [PATCH 15/37] Verify User and Self-Identified User --- .../java/cbit/vcell/field/db/FieldDataDBOperationDriver.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index 2b20636792..6662b5dd3a 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -190,9 +190,12 @@ private static FieldDataDBOperationResults copyNoConflict(Connection con, KeyFac } private static FieldDataDBOperationResults getExternalDataIDs(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { String sql; ResultSet rset; + if (!user.compareEqual(fieldDataDBOperationSpec.owner)){ + throw new DataAccessException("User mismatch"); + } if (fieldDataDBOperationSpec.bIncludeSimRefs) { sql = "SELECT " + ExternalDataTable.table.id.getQualifiedColName() + "," + From e6d0d53d328ccec8bd2bdff99ed325160604f7ee Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 1 Jan 2025 17:42:56 -0500 Subject: [PATCH 16/37] Ignore Un-Required Class Functions --- .../java/org/vcell/util/document/ExternalDataIdentifier.java | 3 +++ vcell-core/src/main/java/org/vcell/util/document/User.java | 2 ++ vcell-util/src/main/java/org/vcell/util/ISize.java | 3 +++ 3 files changed, 8 insertions(+) diff --git a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java index e789614f95..529bf77e2d 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java +++ b/vcell-core/src/main/java/org/vcell/util/document/ExternalDataIdentifier.java @@ -11,6 +11,7 @@ package org.vcell.util.document; import java.util.StringTokenizer; +import com.fasterxml.jackson.annotation.JsonIgnore; import org.vcell.util.Matchable; @@ -67,6 +68,8 @@ public static ExternalDataIdentifier fromTokens(StringTokenizer st){ public String toCSVString(){ return key.toString()+","+owner.getName()+","+owner.getID().toString()+","+name; } + +@JsonIgnore public String getID() { return "SimID_"+getKey().toString()+"_0_"; } diff --git a/vcell-core/src/main/java/org/vcell/util/document/User.java b/vcell-core/src/main/java/org/vcell/util/document/User.java index e606795d63..041727f4b3 100644 --- a/vcell-core/src/main/java/org/vcell/util/document/User.java +++ b/vcell-core/src/main/java/org/vcell/util/document/User.java @@ -13,6 +13,7 @@ import java.util.Arrays; import java.util.Comparator; +import com.fasterxml.jackson.annotation.JsonIgnore; import org.vcell.util.Immutable; import org.vcell.util.Matchable; @@ -157,6 +158,7 @@ public boolean equals(Object obj) { * This method was created in VisualAge. * @return long */ +@JsonIgnore public KeyValue getID() { return key; } diff --git a/vcell-util/src/main/java/org/vcell/util/ISize.java b/vcell-util/src/main/java/org/vcell/util/ISize.java index cb519e9eb1..4b67f386cf 100644 --- a/vcell-util/src/main/java/org/vcell/util/ISize.java +++ b/vcell-util/src/main/java/org/vcell/util/ISize.java @@ -11,6 +11,8 @@ package org.vcell.util; +import com.fasterxml.jackson.annotation.JsonIgnore; + /** * This type was created in VisualAge. */ @@ -102,6 +104,7 @@ public int getX() { * Creation date: (9/30/2005 10:17:58 AM) * @return int */ +@JsonIgnore public int getXYZ() { return x*y*z; } From 3ff2f6511807a5252413c3e79b1b5d88f8340ff7 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 1 Jan 2025 17:45:22 -0500 Subject: [PATCH 17/37] Update Test Utils and Docker Setup ReadME --- docker/swarm/README_zeke_stack_on_linux.md | 5 +++++ .../java/org/vcell/restq/TestEndpointUtils.java | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/docker/swarm/README_zeke_stack_on_linux.md b/docker/swarm/README_zeke_stack_on_linux.md index 97b7d0bf65..4fe974eb78 100644 --- a/docker/swarm/README_zeke_stack_on_linux.md +++ b/docker/swarm/README_zeke_stack_on_linux.md @@ -14,6 +14,11 @@ ./build.sh --skip-maven --skip-sudo all localhost:5000/virtualcell dev_zeke popd ``` + 3. ```bash + pushd ../build + ./build.sh --skip-maven --skip-sudo rest localhost:5000/virtualcell dev_zeke + popd + ``` 3. Run Quarkus in Terminal ``` bash diff --git a/vcell-rest/src/test/java/org/vcell/restq/TestEndpointUtils.java b/vcell-rest/src/test/java/org/vcell/restq/TestEndpointUtils.java index 7905f19d21..c7b59d61c3 100644 --- a/vcell-rest/src/test/java/org/vcell/restq/TestEndpointUtils.java +++ b/vcell-rest/src/test/java/org/vcell/restq/TestEndpointUtils.java @@ -13,7 +13,9 @@ import cbit.vcell.xml.XmlHelper; import cbit.vcell.xml.XmlParseException; import io.quarkus.test.keycloak.client.KeycloakTestClient; +import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; +import org.apache.commons.lang.RandomStringUtils; import org.vcell.restclient.ApiClient; import org.vcell.restclient.ApiException; import org.vcell.restclient.api.UsersResourceApi; @@ -26,11 +28,14 @@ import java.beans.PropertyVetoException; import java.beans.PropertyVetoException; +import java.io.File; import java.io.IOException; +import java.io.InputStream; import java.sql.SQLException; import java.time.LocalDate; import java.util.ArrayList; import java.util.Arrays; +import java.util.Objects; public class TestEndpointUtils { @@ -132,4 +137,12 @@ public static BioModel defaultBiomodel() throws Exception { simulation.getSolverTaskDescription().setTimeBounds(new TimeBounds(0, 10)); return biomodel; } + + public static File getResourceFile(String relativeResourcePath) throws IOException { + InputStream inputStream = Objects.requireNonNull(TestEndpointUtils.class.getResourceAsStream(relativeResourcePath)); + File tmpFile = File.createTempFile("tmp-" + RandomStringUtils.randomAlphabetic(10), ".api-test-file"); + tmpFile.deleteOnExit(); + FileUtils.copyInputStreamToFile(inputStream, tmpFile); + return tmpFile; + } } From 209b0d9a437608a4f0edba539664d21669aa9cca Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 1 Jan 2025 17:49:54 -0500 Subject: [PATCH 18/37] Getting All Field Data IDs Returns a List Before it would return a single object which had a list of other objects. Now it just returns a list of one object type, making what the API sends and receives a lot simpler. --- .../field/FieldDataDBOperationResults.java | 24 +++++++++++-------- .../LocalUserMetaDbServerMessaging.java | 5 +++- .../restq/handlers/FieldData/FieldDataDB.java | 18 +++++++------- .../handlers/FieldData/FieldDataResource.java | 10 ++++---- 4 files changed, 33 insertions(+), 24 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java index 34a11f6fa5..6bee69fd19 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java @@ -14,6 +14,7 @@ import java.util.*; import java.util.stream.Collectors; +import org.vcell.restclient.model.FieldDataReference; import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; @@ -30,18 +31,21 @@ public class FieldDataDBOperationResults implements Serializable { public HashMap> extdataIDAndSimRefH; - public static FieldDataDBOperationResults fieldDataReferencesToDBResults(FieldDataReferences dto, User user){ + public static FieldDataDBOperationResults fieldDataReferencesToDBResults(List dto, User user){ FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); - fieldDataDBOperationResults.extDataIDArr = dto.getExternalDataIdentifiers().stream().map(ExternalDataIdentifier::dtoToExternalDataIdentifier).toArray(ExternalDataIdentifier[]::new); - fieldDataDBOperationResults.extDataAnnotArr = dto.getExternalDataAnnotations().toArray(new String[0]); - fieldDataDBOperationResults.extdataIDAndSimRefH = new HashMap<>(); - if (dto.getExternalDataIDSimRefs() == null){ - return fieldDataDBOperationResults; - } - for (Map.Entry> entry : dto.getExternalDataIDSimRefs().entrySet()){ - fieldDataDBOperationResults.extdataIDAndSimRefH.put(new ExternalDataIdentifier(new KeyValue(entry.getKey()), user, ""), - entry.getValue().stream().map(KeyValue::dtoToKeyValue).collect(Collectors.toCollection(Vector::new))); + ArrayList externalDataIdentifiers = new ArrayList<>(); + ArrayList externalDataAnnotations = new ArrayList<>(); + HashMap> externalDataIDSimRefs = new HashMap<>(); + for (FieldDataReference fieldDataReference : dto){ + ExternalDataIdentifier externalDataIdentifier = ExternalDataIdentifier.dtoToExternalDataIdentifier(fieldDataReference.getExternalDataIdentifier()); + externalDataIdentifiers.add(externalDataIdentifier); + externalDataAnnotations.add(fieldDataReference.getExternalDataAnnotation()); + List keyValues = fieldDataReference.getExternalDataIDSimRef().stream().map(KeyValue::dtoToKeyValue).collect(Collectors.toList()); + externalDataIDSimRefs.put(externalDataIdentifier, new Vector<>(keyValues)); } + fieldDataDBOperationResults.extDataIDArr = externalDataIdentifiers.toArray(new ExternalDataIdentifier[0]); + fieldDataDBOperationResults.extDataAnnotArr = externalDataAnnotations.toArray(new String[0]); + fieldDataDBOperationResults.extdataIDAndSimRefH = externalDataIDSimRefs; return fieldDataDBOperationResults; } diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java index 6b1f913d73..5914584c04 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java @@ -11,11 +11,14 @@ package cbit.vcell.message.server.bootstrap.client; import java.rmi.RemoteException; +import java.util.ArrayList; +import java.util.List; import java.util.TreeMap; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.vcell.api.client.VCellApiClient; +import org.vcell.restclient.model.FieldDataReference; import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.BigString; import org.vcell.util.DataAccessException; @@ -129,7 +132,7 @@ public FieldDataDBOperationResults fieldDataDBOperation(FieldDataDBOperationSpec if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE){ throw new RuntimeException("Can not call deletion on field data DB entry. Have to do both file, and DB deletion."); } else if (fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS) { - FieldDataReferences fieldDataReferences = vCellApiClient.getFieldDataApi().getAllFieldDataIDs(); + List fieldDataReferences = vCellApiClient.getFieldDataApi().getAllFieldDataIDs(); return FieldDataDBOperationResults.fieldDataReferencesToDBResults(fieldDataReferences, fieldDataDBOperationSpec.owner); } else{ return dbServerProxy.fieldDataDBOperation(fieldDataDBOperationSpec); diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index 5245045590..1457813092 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -50,16 +50,18 @@ public FieldDataDBOperationResults copyNoConflict(User user, FieldDataDBOperatio return databaseServer.fieldDataDBOperation(user, spec); } - public FieldDataResource.FieldDataReferences getAllFieldDataIDs(User user) throws SQLException, DataAccessException { + public ArrayList getAllFieldDataIDs(User user) throws SQLException, DataAccessException { FieldDataDBOperationResults results = databaseServer.fieldDataDBOperation(user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)); - HashMap> extdataIDToSimRef = new HashMap<>(); - if (results.extdataIDAndSimRefH == null){ // there can be no simulation references, only file based field data - return new FieldDataResource.FieldDataReferences(results.extDataIDArr, results.extDataAnnotArr, extdataIDToSimRef); - } - for (Map.Entry> entry: results.extdataIDAndSimRefH.entrySet()){ - extdataIDToSimRef.put(entry.getKey().getKey().toString(), entry.getValue()); + ArrayList fieldDataReferenceList = new ArrayList<>(); + for (int i =0; i < results.extDataIDArr.length; i++){ + Vector simRefs = new Vector<>(); + if (results.extdataIDAndSimRefH != null){ + simRefs = results.extdataIDAndSimRefH.get(results.extDataIDArr[i]); + } + FieldDataResource.FieldDataReference fieldDataReference = new FieldDataResource.FieldDataReference(results.extDataIDArr[i], results.extDataAnnotArr[i], simRefs); + fieldDataReferenceList.add(fieldDataReference); } - return new FieldDataResource.FieldDataReferences(results.extDataIDArr, results.extDataAnnotArr, extdataIDToSimRef); + return fieldDataReferenceList; } public FieldDataFileOperationResults getFieldDataFromID(User user, String id, int jobParameter) throws ObjectNotFoundException { diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index de79ed47ed..6e233d3ed6 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -57,7 +57,7 @@ public FieldDataResource(FieldDataDB fieldDataDB, UserRestDB userRestDB){ @GET @Path("IDs") @Operation(operationId = "getAllFieldDataIDs", summary = "Get all of the ids used to identify, and retrieve field data.") - public FieldDataReferences getAllFieldData(){ + public ArrayList getAllFieldDataIDs(){ try { return fieldDataDB.getAllFieldDataIDs(userRestDB.getUserFromIdentity(securityIdentity)); } catch (SQLException e) { @@ -172,10 +172,10 @@ public record FieldDataNoCopyConflict( Hashtable oldNameOldExtDataIDKeyHash ) { } - public record FieldDataReferences( - ExternalDataIdentifier[] externalDataIdentifiers, - String[] externalDataAnnotations, - Map> externalDataIDSimRefs + public record FieldDataReference( + ExternalDataIdentifier externalDataIdentifier, + String externalDataAnnotation, + Vector externalDataIDSimRef ) { } public record AnalyzedResultsFromFieldData( From 891d636f5ad9948c1f69d962abe15f1aa6d034c1 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Wed, 1 Jan 2025 17:50:58 -0500 Subject: [PATCH 19/37] Add Field Data Analysis and Revise Some Endpoints --- .../LocalDataSetControllerMessaging.java | 4 +- .../restq/handlers/FieldData/FieldDataDB.java | 15 ++-- .../handlers/FieldData/FieldDataResource.java | 81 +++++++++---------- 3 files changed, 49 insertions(+), 51 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java index f1ee34e147..731dd1aa31 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java @@ -65,13 +65,13 @@ public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperati try { if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_ADD){ AnalyzedResultsFromFieldData analyzedResultsFromFieldData = FieldDataFileOperationSpec.fieldDataSpecToAnalyzedResultsDTO(fieldDataFileOperationSpec); - FieldDataSaveResults results = vCellApiClient.getFieldDataApi().createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); + FieldDataSaveResults results = vCellApiClient.getFieldDataApi().createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData); return FieldDataFileOperationResults.fieldDataSaveResultsDTOToFileOperationResults(results, fieldDataFileOperationSpec.owner); } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_DELETE) { vCellApiClient.getFieldDataApi().deleteFieldData(fieldDataFileOperationSpec.specEDI.getKey().toString()); return null; } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_INFO) { - FieldDataInfo fieldDataInfo = vCellApiClient.getFieldDataApi().getFieldDataFromID(fieldDataFileOperationSpec.sourceSimDataKey.toString()); + FieldDataInfo fieldDataInfo = vCellApiClient.getFieldDataApi().getFieldDataShapeFromID(fieldDataFileOperationSpec.sourceSimDataKey.toString()); return FieldDataFileOperationResults.fieldDataInfoDTOToFileOperationResults(fieldDataInfo); } else { return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java index 1457813092..b869b3f7a8 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataDB.java @@ -25,6 +25,7 @@ import java.io.*; import java.sql.SQLException; +import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Vector; @@ -68,19 +69,17 @@ public FieldDataFileOperationResults getFieldDataFromID(User user, String id, in return dataSetController.fieldDataFileOperation(FieldDataFileOperationSpec.createInfoFieldDataFileOperationSpec(new KeyValue(id), user, jobParameter)); } - public FieldDataFileOperationSpec generateFieldDataFromFile(InputStream imageFile, String fileName) throws DataAccessException, ImageException, DataFormatException { + public FieldDataResource.AnalyzedResultsFromFieldData generateFieldDataFromFile(File imageFile, String fileName) throws DataAccessException, ImageException, DataFormatException { if (imageFile == null) { throw new DataAccessException("No file present"); } if (!fileName.contains(".vfrap")) { try { - File tmpFile = File.createTempFile("tmp", "file"); - tmpFile.deleteOnExit(); - FileOutputStream out = new FileOutputStream(tmpFile); - IOUtils.copy(imageFile, out); - out.close(); - return FieldDataFileConversion.createFDOSFromImageFile(tmpFile, false, null); - } catch (DataFormatException | IOException ex) { + FieldDataFileOperationSpec spec = FieldDataFileConversion.createFDOSFromImageFile(imageFile, false, null); + return new FieldDataResource.AnalyzedResultsFromFieldData( + spec.shortSpecData, spec.varNames, spec.times, spec.origin, spec.extent, spec.isize, spec.annotation, fileName + ); + } catch (DataFormatException ex) { throw new RuntimeException("Cannot read image " + fileName + "\n" + ex.getMessage()); } } else { diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index 6e233d3ed6..f7dc3227a1 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -1,11 +1,8 @@ package org.vcell.restq.handlers.FieldData; import cbit.image.ImageException; -import cbit.vcell.field.FieldDataDBOperationResults; -import cbit.vcell.field.FieldDataDBOperationSpec; import cbit.vcell.field.io.FieldDataFileOperationResults; import cbit.vcell.field.io.FieldDataFileOperationSpec; -import cbit.vcell.math.VariableType; import cbit.vcell.simdata.DataIdentifier; import io.quarkus.security.identity.SecurityIdentity; import jakarta.enterprise.context.RequestScoped; @@ -16,7 +13,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.eclipse.microprofile.openapi.annotations.Operation; -import org.jboss.resteasy.reactive.PartType; +import org.jboss.resteasy.reactive.RestForm; import org.vcell.restq.db.UserRestDB; import org.vcell.util.DataAccessException; import org.vcell.util.Extent; @@ -26,13 +23,12 @@ import org.vcell.util.document.KeyValue; import org.vcell.util.document.User; +import java.io.File; import java.io.FileNotFoundException; -import java.io.InputStream; import java.sql.SQLException; -import java.util.HashMap; -import java.util.Hashtable; -import java.util.Map; +import java.util.ArrayList; import java.util.Vector; +import java.util.regex.Pattern; import java.util.zip.DataFormatException; @Path("/api/v1/fieldData") @@ -68,8 +64,9 @@ public ArrayList getAllFieldDataIDs(){ } @GET - @Operation(operationId = "getFieldDataFromID", summary = "Get the field data from the selected field data ID.") - public FieldDataInfo getFieldDataFromID(String fieldDataID){ + @Path("/fieldDataShape/{fieldDataID}") + @Operation(operationId = "getFieldDataShapeFromID", summary = "Get the shape of the field data. That is it's size, origin, extent, and data identifiers.") + public FieldDataInfo getFieldDataShapeFromID(@PathParam("fieldDataID") String fieldDataID){ try { FieldDataFileOperationResults results = fieldDataDB.getFieldDataFromID(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID, 0); return new FieldDataInfo(results.extent, results.origin, results.iSize, results.dataIdentifierArr,results.times); @@ -96,24 +93,27 @@ public FieldDataInfo getFieldDataFromID(String fieldDataID){ // return results.extDataID; // } -// @POST -// @Path("/analyzeFieldDataFromFile") -// @Produces(MediaType.APPLICATION_JSON) -// @Consumes(MediaType.MULTIPART_FORM_DATA) -// @Operation(operationId = "generateFieldDataEstimate") -// public FieldDataFileOperationSpec generateFieldDataEstimate(FieldDataFile fieldDataFile){ -// try{ -// return fieldDataDB.generateFieldDataFromFile(fieldDataFile.file, fieldDataFile.fileName); -// } catch (ImageException | DataFormatException | DataAccessException e) { -// throw new WebApplicationException("Can't create new field data file", 500); -// } -// } + @POST + @Path("/analyzeFieldDataFile") + @Produces(MediaType.APPLICATION_JSON) + @Consumes(MediaType.MULTIPART_FORM_DATA) + @Operation(operationId = "analyzeFieldDataFile", summary = "Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores.") + public AnalyzedResultsFromFieldData analyzeFieldData(@RestForm File file, @RestForm String fileName){ + try{ + if (!Pattern.matches("^[a-z0-9_]*$", fileName) || fileName.length() > 100 || fileName.isEmpty()){ + throw new WebApplicationException("Invalid file name.", 400); + } + return fieldDataDB.generateFieldDataFromFile(file, fileName); + } catch (ImageException | DataFormatException | DataAccessException e) { + throw new WebApplicationException("Can't create new field data file", 500); + } + } @POST - @Path("/createFieldDataFromFileAlreadyAnalyzed") + @Path("/createFieldDataFromAnalyzedFile") @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @Operation(operationId = "createNewFieldDataFromFileAlreadyAnalyzed") + @Operation(operationId = "createFieldDataFromAnalyzedFile", summary = "Take the analyzed results of the field data, modify it to your liking, then save it on the server.") public FieldDataSaveResults createNewFieldDataFromFile(AnalyzedResultsFromFieldData saveFieldData){ FieldDataSaveResults fieldDataSaveResults; try{ @@ -142,8 +142,9 @@ public FieldDataSaveResults createNewFieldDataFromFile(AnalyzedResultsFromFieldD // } @DELETE + @Path("/delete/{fieldDataID}") @Operation(operationId = "deleteFieldData", summary = "Delete the selected field data.") - public void deleteFieldData(String fieldDataID){ + public void deleteFieldData(@PathParam("fieldDataID") String fieldDataID){ try{ fieldDataDB.deleteFieldData(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID); } catch (DataAccessException e) { @@ -159,18 +160,18 @@ public record FieldDataInfo( double[] times ){ } - public record DataID( - String name, - String displayName, - VariableType variableType, - String domainName, - boolean bFunction - ){ } +// public record DataID( +// String name, +// String displayName, +// VariableType variableType, +// String domainName, +// boolean bFunction +// ){ } - public record FieldDataNoCopyConflict( - Hashtable oldNameNewIDHash, - Hashtable oldNameOldExtDataIDKeyHash - ) { } +// public record FieldDataNoCopyConflict( +// Hashtable oldNameNewIDHash, +// Hashtable oldNameOldExtDataIDKeyHash +// ) { } public record FieldDataReference( ExternalDataIdentifier externalDataIdentifier, @@ -195,12 +196,10 @@ public record FieldDataSaveResults( ){ } public static class FieldDataFile { - @FormParam("file") - @PartType(MediaType.APPLICATION_OCTET_STREAM) - public InputStream file; + @RestForm("file") + public File file; - @FormParam("fieldDataName") - @PartType(MediaType.TEXT_PLAIN) + @RestForm("fileName") public String fileName; } From 7f071c8f557c37ed4353a5fa6e80e5ebfbf7ccab Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:19:00 -0500 Subject: [PATCH 20/37] Rename DTO For Clarity --- .../cbit/vcell/field/io/FieldDataFileOperationResults.java | 3 ++- .../bootstrap/client/LocalDataSetControllerMessaging.java | 2 +- .../vcell/restq/handlers/FieldData/FieldDataResource.java | 7 +++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java index 0940ecaa04..170455b25c 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java @@ -13,6 +13,7 @@ import cbit.vcell.simdata.DataIdentifier; import org.vcell.restclient.model.FieldDataInfo; import org.vcell.restclient.model.FieldDataSaveResults; +import org.vcell.restclient.model.FieldDataShape; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; @@ -53,7 +54,7 @@ public FieldDataFileOperationResults() { super(); } - public static FieldDataFileOperationResults fieldDataInfoDTOToFileOperationResults(FieldDataInfo dto){ + public static FieldDataFileOperationResults fieldDataInfoDTOToFileOperationResults(FieldDataShape dto){ FieldDataFileOperationResults results = new FieldDataFileOperationResults(); results.extent = Extent.dtoToExtent(dto.getExtent()); results.origin = Origin.dtoToOrigin(dto.getOrigin()); diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java index 731dd1aa31..4fc57bd0f0 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalDataSetControllerMessaging.java @@ -71,7 +71,7 @@ public FieldDataFileOperationResults fieldDataFileOperation(FieldDataFileOperati vCellApiClient.getFieldDataApi().deleteFieldData(fieldDataFileOperationSpec.specEDI.getKey().toString()); return null; } else if (fieldDataFileOperationSpec.opType == FieldDataFileOperationSpec.FDOS_INFO) { - FieldDataInfo fieldDataInfo = vCellApiClient.getFieldDataApi().getFieldDataShapeFromID(fieldDataFileOperationSpec.sourceSimDataKey.toString()); + FieldDataShape fieldDataInfo = vCellApiClient.getFieldDataApi().getFieldDataShapeFromID(fieldDataFileOperationSpec.sourceSimDataKey.toString()); return FieldDataFileOperationResults.fieldDataInfoDTOToFileOperationResults(fieldDataInfo); } else { return dataServerProxy.fieldDataFileOperation(fieldDataFileOperationSpec); diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index f7dc3227a1..ae4c57f207 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -2,7 +2,6 @@ import cbit.image.ImageException; import cbit.vcell.field.io.FieldDataFileOperationResults; -import cbit.vcell.field.io.FieldDataFileOperationSpec; import cbit.vcell.simdata.DataIdentifier; import io.quarkus.security.identity.SecurityIdentity; import jakarta.enterprise.context.RequestScoped; @@ -66,10 +65,10 @@ public ArrayList getAllFieldDataIDs(){ @GET @Path("/fieldDataShape/{fieldDataID}") @Operation(operationId = "getFieldDataShapeFromID", summary = "Get the shape of the field data. That is it's size, origin, extent, and data identifiers.") - public FieldDataInfo getFieldDataShapeFromID(@PathParam("fieldDataID") String fieldDataID){ + public FieldDataShape getFieldDataShapeFromID(@PathParam("fieldDataID") String fieldDataID){ try { FieldDataFileOperationResults results = fieldDataDB.getFieldDataFromID(userRestDB.getUserFromIdentity(securityIdentity), fieldDataID, 0); - return new FieldDataInfo(results.extent, results.origin, results.iSize, results.dataIdentifierArr,results.times); + return new FieldDataShape(results.extent, results.origin, results.iSize, results.dataIdentifierArr,results.times); } catch (DataAccessException e) { if (e.getCause() instanceof FileNotFoundException){ throw new WebApplicationException("Field data not found.", 404); @@ -152,7 +151,7 @@ public void deleteFieldData(@PathParam("fieldDataID") String fieldDataID){ } } - public record FieldDataInfo( + public record FieldDataShape( Extent extent, Origin origin, ISize isize, From e991a9ab6a194232df9961e28d107b4d22110242 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:20:38 -0500 Subject: [PATCH 21/37] OpenAPI YAML The autogenerated spec for the REST API. --- tools/openapi.yaml | 487 +++++++-------------------------------------- 1 file changed, 74 insertions(+), 413 deletions(-) diff --git a/tools/openapi.yaml b/tools/openapi.yaml index 9abb8b14ac..75263ca38b 100644 --- a/tools/openapi.yaml +++ b/tools/openapi.yaml @@ -42,10 +42,10 @@ paths: application/json: schema: $ref: '#/components/schemas/SimulationStatusPersistentRecord' - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -70,10 +70,10 @@ paths: type: array items: $ref: '#/components/schemas/StatusMessage' - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -98,10 +98,10 @@ paths: type: array items: $ref: '#/components/schemas/StatusMessage' - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -137,10 +137,10 @@ paths: text/plain: schema: type: string - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -179,37 +179,6 @@ paths: responses: "204": description: No Content - /api/v1/fieldData: - get: - tags: - - Field Data Resource - summary: Get the field data from the selected field data ID. - operationId: getFieldDataFromID - requestBody: - content: - text/plain: - schema: - type: string - responses: - "200": - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataInfo' - delete: - tags: - - Field Data Resource - summary: Delete the selected field data. - operationId: deleteFieldData - requestBody: - content: - text/plain: - schema: - type: string - responses: - "204": - description: No Content /api/v1/fieldData/IDs: get: tags: @@ -222,77 +191,88 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FieldDataReferences' - /api/v1/fieldData/analyzeFieldDataFromFile: + type: array + items: + $ref: '#/components/schemas/FieldDataReference' + /api/v1/fieldData/analyzeFieldDataFile: post: tags: - Field Data Resource - operationId: generateFieldDataEstimate + summary: "Analyze the field data from the uploaded file. Filenames must be lowercase\ + \ alphanumeric, and can contain underscores." + operationId: analyzeFieldDataFile requestBody: content: multipart/form-data: schema: - $ref: '#/components/schemas/FieldDataFile' + type: object + properties: + file: + format: binary + type: string + fileName: + type: string responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/FieldDataFileOperationSpec' - /api/v1/fieldData/copy: + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' + /api/v1/fieldData/createFieldDataFromAnalyzedFile: post: tags: - Field Data Resource - summary: Copy an existing field data entry. - operationId: copyFieldData + summary: "Take the analyzed results of the field data, modify it to your liking,\ + \ then save it on the server." + operationId: createFieldDataFromAnalyzedFile requestBody: content: application/json: schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/FieldDataNoCopyConflict' - /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: - post: + $ref: '#/components/schemas/FieldDataSaveResults' + /api/v1/fieldData/delete/{fieldDataID}: + delete: tags: - Field Data Resource - operationId: createNewFieldDataFromFileAlreadyAnalyzed - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AnalyzedResultsFromFieldData' + summary: Delete the selected field data. + operationId: deleteFieldData + parameters: + - name: fieldDataID + in: path + required: true + schema: + type: string responses: - "200": - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataSaveResults' - /api/v1/fieldData/createFieldDataFromSimulation: - post: + "204": + description: No Content + /api/v1/fieldData/fieldDataShape/{fieldDataID}: + get: tags: - Field Data Resource - summary: Create new field data from a simulation. - operationId: createNewFieldDataFromSimulation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + summary: "Get the shape of the field data. That is it's size, origin, extent,\ + \ and data identifiers." + operationId: getFieldDataShapeFromID + parameters: + - name: fieldDataID + in: path + required: true + schema: + type: string responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/ExternalDataIdentifier' + $ref: '#/components/schemas/FieldDataShape' /api/v1/helloworld: get: tags: @@ -404,10 +384,10 @@ paths: application/json: schema: $ref: '#/components/schemas/AccesTokenRepresentationRecord' - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -466,10 +446,10 @@ paths: application/json: schema: type: boolean - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -486,10 +466,10 @@ paths: application/json: schema: $ref: '#/components/schemas/UserIdentityJSONSafe' - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -522,10 +502,10 @@ paths: description: "Successful, returning the identity" "409": description: "VCell Identity not mapped, userid already exists" - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -565,10 +545,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -591,10 +571,10 @@ paths: application/json: schema: type: boolean - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -704,67 +684,6 @@ components: versionFlag: format: int32 type: integer - CartesianMesh: - type: object - properties: - compressedBytes: - format: binary - type: string - uCDInfo: - $ref: '#/components/schemas/UCDInfo' - geometryDimension: - format: int32 - type: integer - volumeRegionMapSubvolume: - type: object - additionalProperties: - format: int32 - type: integer - membraneRegionMapSubvolumesInOut: - type: object - additionalProperties: {} - numMembraneElements: - format: int32 - type: integer - numMembraneRegions: - format: int32 - type: integer - numVolumeElements: - format: int32 - type: integer - numVolumeRegions: - format: int32 - type: integer - iSize: - $ref: '#/components/schemas/ISize' - sizeX: - format: int32 - type: integer - sizeY: - format: int32 - type: integer - sizeZ: - format: int32 - type: integer - membraneConnectivityOK: - type: boolean - outputFields: - type: array - items: {} - chomboMesh: - type: boolean - Coordinate: - type: object - properties: - x: - format: double - type: number - "y": - format: double - type: number - z: - format: double - type: number DataIdentifier: type: object properties: @@ -871,8 +790,6 @@ components: $ref: '#/components/schemas/User' name: type: string - iD: - type: string jobIndex: format: int32 type: integer @@ -882,96 +799,25 @@ components: type: boolean dataKey: $ref: '#/components/schemas/KeyValue' - FieldDataDBOperationSpec: + FieldDataReference: type: object properties: - opType: - format: int32 - type: integer - specEDI: + externalDataIdentifier: $ref: '#/components/schemas/ExternalDataIdentifier' - owner: - $ref: '#/components/schemas/User' - newExtDataIDName: - type: string - annotation: + externalDataAnnotation: type: string - sourceNames: + externalDataIDSimRef: type: array items: - type: string - sourceOwner: - $ref: '#/components/schemas/VersionableTypeVersion' - bIncludeSimRefs: - type: boolean - FieldDataFile: - type: object - properties: - file: - format: binary - type: string - fileName: - type: string - FieldDataFileOperationSpec: + $ref: '#/components/schemas/KeyValue' + FieldDataSaveResults: type: object properties: - opType: - format: int32 - type: integer - shortSpecData: - type: array - items: - type: array - items: - type: array - items: - type: integer - doubleSpecData: - type: array - items: - type: array - items: - type: array - items: - format: double - type: number - cartesianMesh: - $ref: '#/components/schemas/CartesianMesh' - specEDI: - $ref: '#/components/schemas/ExternalDataIdentifier' - varNames: - type: array - items: - type: string - variableTypes: - type: array - items: - $ref: '#/components/schemas/VariableType' - times: - type: array - items: - format: double - type: number - owner: - $ref: '#/components/schemas/User' - origin: - $ref: '#/components/schemas/Origin' - extent: - $ref: '#/components/schemas/Extent' - isize: - $ref: '#/components/schemas/ISize' - annotation: - type: string - sourceSimParamScanJobIndex: - format: int32 - type: integer - sourceSimDataKey: - $ref: '#/components/schemas/KeyValue' - sourceOwner: - $ref: '#/components/schemas/User' fieldDataName: type: string - FieldDataInfo: + fieldDataID: + type: string + FieldDataShape: type: object properties: extent: @@ -989,48 +835,6 @@ components: items: format: double type: number - FieldDataNoCopyConflict: - type: object - properties: - oldNameNewIDHash: - type: object - additionalProperties: - $ref: '#/components/schemas/ExternalDataIdentifier' - oldNameOldExtDataIDKeyHash: - type: object - additionalProperties: - $ref: '#/components/schemas/KeyValue' - FieldDataReferences: - type: object - properties: - externalDataIdentifiers: - type: array - items: - $ref: '#/components/schemas/ExternalDataIdentifier' - externalDataAnnotations: - type: array - items: - type: string - externalDataIDSimRefs: - type: object - additionalProperties: - type: array - items: - $ref: '#/components/schemas/KeyValue' - FieldDataSaveResults: - type: object - properties: - fieldDataName: - type: string - fieldDataID: - type: string - GroupAccess: - type: object - properties: - groupid: - type: number - description: - type: string HelloWorldMessage: type: object properties: @@ -1058,9 +862,6 @@ components: z: format: int32 type: integer - xYZ: - format: int32 - type: integer Identity: type: object properties: @@ -1274,64 +1075,6 @@ components: timepoint: format: double type: number - UCDInfo: - type: object - properties: - ucdGridNodes: - type: array - items: - type: array - items: - type: array - items: - $ref: '#/components/schemas/Coordinate' - ucdMembraneQuads: - type: array - items: - type: array - items: - format: int32 - type: integer - reducedUCDGridNodesV: - type: array - items: - $ref: '#/components/schemas/Coordinate' - uCDGridNodes: - type: array - items: - type: array - items: - type: array - items: - $ref: '#/components/schemas/Coordinate' - uCDMembraneQuads: - type: array - items: - type: array - items: - format: int32 - type: integer - numVolumeNodesX: - format: int32 - type: integer - numVolumeNodesY: - format: int32 - type: integer - numVolumeNodesZ: - format: int32 - type: integer - numPointsXYZ: - format: int32 - type: integer - numVolumeNodesXY: - format: int32 - type: integer - numVolumeCells: - format: int32 - type: integer - numMembraneCells: - format: int32 - type: integer User: type: object properties: @@ -1339,8 +1082,6 @@ components: type: string key: $ref: '#/components/schemas/KeyValue' - iD: - $ref: '#/components/schemas/KeyValue' name: type: string testAccount: @@ -1419,86 +1160,6 @@ components: type: string typeName: type: string - Version: - type: object - properties: - versionKey: - $ref: '#/components/schemas/KeyValue' - versionName: - type: string - versionOwner: - $ref: '#/components/schemas/User' - versionGroupAccess: - $ref: '#/components/schemas/GroupAccess' - versionBranchPointRef: - $ref: '#/components/schemas/KeyValue' - versionBranchID: - type: number - versionDate: - $ref: '#/components/schemas/Date' - versionFlag: - $ref: '#/components/schemas/VersionFlag' - versionAnnot: - type: string - annot: - type: string - branchID: - type: number - branchPointRefKey: - $ref: '#/components/schemas/KeyValue' - date: - $ref: '#/components/schemas/Date' - flag: - $ref: '#/components/schemas/VersionFlag' - groupAccess: - $ref: '#/components/schemas/GroupAccess' - name: - type: string - owner: - $ref: '#/components/schemas/User' - VersionFlag: - type: object - properties: - versionFlag: - format: int32 - type: integer - intValue: - format: int32 - type: integer - archived: - type: boolean - current: - type: boolean - published: - type: boolean - VersionableType: - type: object - properties: - vType: - format: int32 - type: integer - name: - type: string - vClass: - type: object - bTopLevel: - type: boolean - code: - format: int32 - type: integer - isTopLevel: - type: boolean - typeName: - type: string - versionClass: - type: object - VersionableTypeVersion: - type: object - properties: - vType: - $ref: '#/components/schemas/VersionableType' - version: - $ref: '#/components/schemas/Version' securitySchemes: openId: type: openIdConnect From 9f7a9994f4946fa262efe4ae88c57ded861c7f21 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:40:28 -0500 Subject: [PATCH 22/37] Move Python Scripts to Their Own Package Put all of the example scripts so far created into their own respective package instead of the top level directory. --- python-restclient/examples/__init__.py | 0 python-restclient/{ => examples}/example_latest.ipynb | 0 python-restclient/{ => examples}/scratch.py | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 python-restclient/examples/__init__.py rename python-restclient/{ => examples}/example_latest.ipynb (100%) rename python-restclient/{ => examples}/scratch.py (100%) diff --git a/python-restclient/examples/__init__.py b/python-restclient/examples/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/python-restclient/example_latest.ipynb b/python-restclient/examples/example_latest.ipynb similarity index 100% rename from python-restclient/example_latest.ipynb rename to python-restclient/examples/example_latest.ipynb diff --git a/python-restclient/scratch.py b/python-restclient/examples/scratch.py similarity index 100% rename from python-restclient/scratch.py rename to python-restclient/examples/scratch.py From 2e9bd8340228329b8defa3c08d1fd1de6d960ca9 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:41:52 -0500 Subject: [PATCH 23/37] Sensible Defaults for Python Interactive Login --- python-restclient/vcell_client/auth/auth_utils.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/python-restclient/vcell_client/auth/auth_utils.py b/python-restclient/vcell_client/auth/auth_utils.py index 8553fbb2cd..c26183be7e 100644 --- a/python-restclient/vcell_client/auth/auth_utils.py +++ b/python-restclient/vcell_client/auth/auth_utils.py @@ -97,7 +97,6 @@ def login_interactive_tokens(client_id: str, auth_url: str, token_url: str, jwks with OAuthHttpServer((hostname, temp_http_port), OAuthHttpHandler, success_redirect_url=success_redirect_url) as httpd: redirectURI = f'http://{hostname}:{temp_http_port}{OIDC_TEST_CALLBACK}' - oauth2client = OAuth2Client( token_endpoint=token_url, authorization_endpoint=auth_url, @@ -127,19 +126,26 @@ def get_authorization_and_token_endpoints(issuer_url: str) -> tuple[str, str, st return data.get('authorization_endpoint'), data.get('token_endpoint'), data.get('jwks_uri') -def login_interactive(api_base_url: str, client_id: str, issuer_url: str) -> ApiClient: +def login_interactive(api_base_url: str = "https://vcell.cam.uchc.edu/api/v1", client_id: str = "cjoWhd7W8A8znf7Z7vizyvKJCiqTgRtf", + issuer_url: str = "https://dev-dzhx7i2db3x3kkvq.us.auth0.com", insecure: bool = False) -> ApiClient: """ This function is used to login interactively to the VCell API. It is used for the ApiClient class to set the access token. + Only change the default variables set if you know what you are doing. :param api_base_url: The base URL of the VCell API. :param client_id: The client ID of the VCell API OIDC auth provider. :param issuer_url: The base URL of the VCell API OIDC auth provider. + :param insecure: If a custom endpoint is used that does not have proper SSL certificate. :return: An ApiClient object with the access token set. """ auth_url, token_url, jwks_uri = get_authorization_and_token_endpoints(issuer_url) auth_code_response: AuthCodeResponse = login_interactive_tokens( client_id=client_id, auth_url=auth_url, token_url=token_url, jwks_uri=jwks_uri, success_redirect_url=api_base_url + LOGIN_SUCCESS) id_token = auth_code_response.id_token - api_client = ApiClient(configuration=Configuration(host=api_base_url, access_token=id_token)) + config = Configuration(host=api_base_url, access_token=id_token) + if insecure: + config.assert_hostname = False + config.verify_ssl = False + api_client = ApiClient(configuration=config) api_client.set_default_header('Authorization', f'Bearer {id_token}') return api_client From 9c3e708c6cab51d5b9ae22a5d5f0c851d8b0a0bb Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:50:32 -0500 Subject: [PATCH 24/37] Python Script which Exercises the Field Data Endpoint --- .../examples/FieldDataScratch.py | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 python-restclient/examples/FieldDataScratch.py diff --git a/python-restclient/examples/FieldDataScratch.py b/python-restclient/examples/FieldDataScratch.py new file mode 100644 index 0000000000..308fb02d38 --- /dev/null +++ b/python-restclient/examples/FieldDataScratch.py @@ -0,0 +1,39 @@ +from vcell_client.auth.auth_utils import login_interactive +from vcell_client.api.field_data_resource_api import FieldDataResourceApi + +################# +# Create Client # +################# + +api_url = "https://minikube.island" # local vcell-rest service - use `quarkus dev` in vcell-rest folder to start +# api_url = "http://localhost:9000" +api_client = login_interactive(api_base_url=api_url, insecure=True) +field_data_api = FieldDataResourceApi(api_client=api_client) + +########################## +# Get Current Field Data # +########################## +ids = field_data_api.get_all_field_data_ids() +oldLenOfIDs = len(ids) + +# ##################### +# # Create Field Data # +# ##################### +analyzed = field_data_api.analyze_field_data_file("/Users/evalencia/Downloads/file_example_TIFF_1MB.tiff", "test_file2") +results = field_data_api.create_field_data_from_analyzed_file(analyzed) + +################################ +# Retrieve Shape of Field Data # +################################ +fd_shape = field_data_api.get_field_data_shape_from_id(results.field_data_id) +print(fd_shape) + +##################### +# Delete Field Data # +##################### +ids = field_data_api.get_all_field_data_ids() +assert len(ids) == oldLenOfIDs + 1 +field_data_api.delete_field_data(results.field_data_id) +ids = field_data_api.get_all_field_data_ids() +assert len(ids) == oldLenOfIDs + From a2c84b54cf56cdd9f63babbae187f2200084096f Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:54:03 -0500 Subject: [PATCH 25/37] Update Python Clients Dependencies Some of the dependencies wouldn't work with PyCharms debugging capabilities, in addition some where missing for the Auth and Jupyter notebooks. --- python-restclient/poetry.lock | 2071 +++++++++++++++++------------- python-restclient/pyproject.toml | 9 +- 2 files changed, 1173 insertions(+), 907 deletions(-) diff --git a/python-restclient/poetry.lock b/python-restclient/poetry.lock index 10bfaeb215..3a1a6c0e5e 100644 --- a/python-restclient/poetry.lock +++ b/python-restclient/poetry.lock @@ -1,25 +1,25 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.5 and should not be changed by hand. [[package]] name = "annotated-types" -version = "0.6.0" +version = "0.7.0" description = "Reusable constraint types to use with typing.Annotated" optional = false python-versions = ">=3.8" files = [ - {file = "annotated_types-0.6.0-py3-none-any.whl", hash = "sha256:0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"}, - {file = "annotated_types-0.6.0.tar.gz", hash = "sha256:563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d"}, + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] [[package]] name = "anyio" -version = "4.3.0" +version = "4.5.2" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.8" files = [ - {file = "anyio-4.3.0-py3-none-any.whl", hash = "sha256:048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"}, - {file = "anyio-4.3.0.tar.gz", hash = "sha256:f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6"}, + {file = "anyio-4.5.2-py3-none-any.whl", hash = "sha256:c011ee36bc1e8ba40e5a81cb9df91925c218fe9b778554e0b56a21e1b5d4716f"}, + {file = "anyio-4.5.2.tar.gz", hash = "sha256:23009af4ed04ce05991845451e11ef02fc7c5ed29179ac9a420e5ad0ac7ddc5b"}, ] [package.dependencies] @@ -29,9 +29,9 @@ sniffio = ">=1.1" typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} [package.extras] -doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] -trio = ["trio (>=0.23)"] +doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] +trio = ["trio (>=0.26.1)"] [[package]] name = "appnope" @@ -122,21 +122,18 @@ test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock [[package]] name = "asttokens" -version = "2.4.1" +version = "3.0.0" description = "Annotate AST trees with source code positions" optional = false -python-versions = "*" +python-versions = ">=3.8" files = [ - {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, - {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, + {file = "asttokens-3.0.0-py3-none-any.whl", hash = "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2"}, + {file = "asttokens-3.0.0.tar.gz", hash = "sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7"}, ] -[package.dependencies] -six = ">=1.12.0" - [package.extras] -astroid = ["astroid (>=1,<2)", "astroid (>=2,<4)"] -test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] +astroid = ["astroid (>=2,<4)"] +test = ["astroid (>=2,<4)", "pytest", "pytest-cov", "pytest-xdist"] [[package]] name = "async-lru" @@ -154,37 +151,48 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} [[package]] name = "attrs" -version = "23.2.0" +version = "24.3.0" description = "Classes Without Boilerplate" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, - {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, + {file = "attrs-24.3.0-py3-none-any.whl", hash = "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308"}, + {file = "attrs-24.3.0.tar.gz", hash = "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff"}, ] [package.extras] -cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] -dev = ["attrs[tests]", "pre-commit"] -docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] -tests = ["attrs[tests-no-zope]", "zope-interface"] -tests-mypy = ["mypy (>=1.6)", "pytest-mypy-plugins"] -tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist[psutil]"] +benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] [[package]] name = "babel" -version = "2.14.0" +version = "2.16.0" description = "Internationalization utilities" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"}, - {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"}, + {file = "babel-2.16.0-py3-none-any.whl", hash = "sha256:368b5b98b37c06b7daf6696391c3240c938b37767d4584413e8438c5c435fa8b"}, + {file = "babel-2.16.0.tar.gz", hash = "sha256:d1f3554ca26605fe173f3de0c65f750f5a42f924499bf134de6423582298e316"}, ] [package.extras] dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] +[[package]] +name = "backcall" +version = "0.2.0" +description = "Specifications for callback functions passed in to an API" +optional = false +python-versions = "*" +files = [ + {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, + {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, +] + [[package]] name = "beautifulsoup4" version = "4.12.3" @@ -240,85 +248,100 @@ css = ["tinycss2 (>=1.1.0,<1.3)"] [[package]] name = "cachetools" -version = "5.3.3" +version = "5.5.0" description = "Extensible memoizing collections and decorators" optional = false python-versions = ">=3.7" files = [ - {file = "cachetools-5.3.3-py3-none-any.whl", hash = "sha256:0abad1021d3f8325b2fc1d2e9c8b9c9d57b04c3932657a72465447332c24d945"}, - {file = "cachetools-5.3.3.tar.gz", hash = "sha256:ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105"}, + {file = "cachetools-5.5.0-py3-none-any.whl", hash = "sha256:02134e8439cdc2ffb62023ce1debca2944c3f289d66bb17ead3ab3dede74b292"}, + {file = "cachetools-5.5.0.tar.gz", hash = "sha256:2cc24fb4cbe39633fb7badd9db9ca6295d766d9c2995f245725a46715d050f2a"}, ] [[package]] name = "certifi" -version = "2024.2.2" +version = "2024.12.14" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, - {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, + {file = "certifi-2024.12.14-py3-none-any.whl", hash = "sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56"}, + {file = "certifi-2024.12.14.tar.gz", hash = "sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db"}, ] [[package]] name = "cffi" -version = "1.16.0" +version = "1.17.1" description = "Foreign Function Interface for Python calling C code." optional = false python-versions = ">=3.8" files = [ - {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, - {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, - {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, - {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, - {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, - {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, - {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, - {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, - {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, - {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, - {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, - {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, - {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, - {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, - {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be"}, + {file = "cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c"}, + {file = "cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b"}, + {file = "cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655"}, + {file = "cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8"}, + {file = "cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65"}, + {file = "cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9"}, + {file = "cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d"}, + {file = "cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a"}, + {file = "cffi-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1"}, + {file = "cffi-1.17.1-cp38-cp38-win32.whl", hash = "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8"}, + {file = "cffi-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e"}, + {file = "cffi-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7"}, + {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"}, + {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"}, ] [package.dependencies] @@ -337,101 +360,103 @@ files = [ [[package]] name = "charset-normalizer" -version = "3.3.2" +version = "3.4.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false -python-versions = ">=3.7.0" +python-versions = ">=3.7" files = [ - {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win32.whl", hash = "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win32.whl", hash = "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win32.whl", hash = "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win32.whl", hash = "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win32.whl", hash = "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win32.whl", hash = "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win32.whl", hash = "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765"}, + {file = "charset_normalizer-3.4.1-py3-none-any.whl", hash = "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85"}, + {file = "charset_normalizer-3.4.1.tar.gz", hash = "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3"}, ] [[package]] @@ -464,43 +489,38 @@ test = ["pytest"] [[package]] name = "cryptography" -version = "42.0.5" +version = "43.0.3" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, - {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, - {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, - {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, - {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, - {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, - {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, + {file = "cryptography-43.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:bf7a1932ac4176486eab36a19ed4c0492da5d97123f1406cf15e41b05e787d2e"}, + {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63efa177ff54aec6e1c0aefaa1a241232dcd37413835a9b674b6e3f0ae2bfd3e"}, + {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e1ce50266f4f70bf41a2c6dc4358afadae90e2a1e5342d3c08883df1675374f"}, + {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:443c4a81bb10daed9a8f334365fe52542771f25aedaf889fd323a853ce7377d6"}, + {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:74f57f24754fe349223792466a709f8e0c093205ff0dca557af51072ff47ab18"}, + {file = "cryptography-43.0.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9762ea51a8fc2a88b70cf2995e5675b38d93bf36bd67d91721c309df184f49bd"}, + {file = "cryptography-43.0.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:81ef806b1fef6b06dcebad789f988d3b37ccaee225695cf3e07648eee0fc6b73"}, + {file = "cryptography-43.0.3-cp37-abi3-win32.whl", hash = "sha256:cbeb489927bd7af4aa98d4b261af9a5bc025bd87f0e3547e11584be9e9427be2"}, + {file = "cryptography-43.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:f46304d6f0c6ab8e52770addfa2fc41e6629495548862279641972b6215451cd"}, + {file = "cryptography-43.0.3-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:8ac43ae87929a5982f5948ceda07001ee5e83227fd69cf55b109144938d96984"}, + {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:846da004a5804145a5f441b8530b4bf35afbf7da70f82409f151695b127213d5"}, + {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f996e7268af62598f2fc1204afa98a3b5712313a55c4c9d434aef49cadc91d4"}, + {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:f7b178f11ed3664fd0e995a47ed2b5ff0a12d893e41dd0494f406d1cf555cab7"}, + {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:c2e6fc39c4ab499049df3bdf567f768a723a5e8464816e8f009f121a5a9f4405"}, + {file = "cryptography-43.0.3-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e1be4655c7ef6e1bbe6b5d0403526601323420bcf414598955968c9ef3eb7d16"}, + {file = "cryptography-43.0.3-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:df6b6c6d742395dd77a23ea3728ab62f98379eff8fb61be2744d4679ab678f73"}, + {file = "cryptography-43.0.3-cp39-abi3-win32.whl", hash = "sha256:d56e96520b1020449bbace2b78b603442e7e378a9b3bd68de65c782db1507995"}, + {file = "cryptography-43.0.3-cp39-abi3-win_amd64.whl", hash = "sha256:0c580952eef9bf68c4747774cde7ec1d85a6e61de97281f2dba83c7d2c806362"}, + {file = "cryptography-43.0.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d03b5621a135bffecad2c73e9f4deb1a0f977b9a8ffe6f8e002bf6c9d07b918c"}, + {file = "cryptography-43.0.3-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:a2a431ee15799d6db9fe80c82b055bae5a752bef645bba795e8e52687c69efe3"}, + {file = "cryptography-43.0.3-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:281c945d0e28c92ca5e5930664c1cefd85efe80e5c0d2bc58dd63383fda29f83"}, + {file = "cryptography-43.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:f18c716be16bc1fea8e95def49edf46b82fccaa88587a45f8dc0ff6ab5d8e0a7"}, + {file = "cryptography-43.0.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:4a02ded6cd4f0a5562a8887df8b3bd14e822a90f97ac5e544c162899bc467664"}, + {file = "cryptography-43.0.3-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:53a583b6637ab4c4e3591a15bc9db855b8d9dee9a669b550f311480acab6eb08"}, + {file = "cryptography-43.0.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1ec0bcf7e17c0c5669d881b1cd38c4972fade441b27bda1051665faaa89bdcaa"}, + {file = "cryptography-43.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2ce6fae5bdad59577b44e4dfed356944fbf1d925269114c28be377692643b4ff"}, + {file = "cryptography-43.0.3.tar.gz", hash = "sha256:315b9001266a492a6ff443b61238f956b214dbec9910a081ba5b6646a055a805"}, ] [package.dependencies] @@ -513,38 +533,42 @@ nox = ["nox"] pep8test = ["check-sdist", "click", "mypy", "ruff"] sdist = ["build"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi", "cryptography-vectors (==43.0.3)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] test-randomorder = ["pytest-randomly"] [[package]] name = "debugpy" -version = "1.8.1" +version = "1.8.11" description = "An implementation of the Debug Adapter Protocol for Python" optional = false python-versions = ">=3.8" files = [ - {file = "debugpy-1.8.1-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:3bda0f1e943d386cc7a0e71bfa59f4137909e2ed947fb3946c506e113000f741"}, - {file = "debugpy-1.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dda73bf69ea479c8577a0448f8c707691152e6c4de7f0c4dec5a4bc11dee516e"}, - {file = "debugpy-1.8.1-cp310-cp310-win32.whl", hash = "sha256:3a79c6f62adef994b2dbe9fc2cc9cc3864a23575b6e387339ab739873bea53d0"}, - {file = "debugpy-1.8.1-cp310-cp310-win_amd64.whl", hash = "sha256:7eb7bd2b56ea3bedb009616d9e2f64aab8fc7000d481faec3cd26c98a964bcdd"}, - {file = "debugpy-1.8.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:016a9fcfc2c6b57f939673c874310d8581d51a0fe0858e7fac4e240c5eb743cb"}, - {file = "debugpy-1.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd97ed11a4c7f6d042d320ce03d83b20c3fb40da892f994bc041bbc415d7a099"}, - {file = "debugpy-1.8.1-cp311-cp311-win32.whl", hash = "sha256:0de56aba8249c28a300bdb0672a9b94785074eb82eb672db66c8144fff673146"}, - {file = "debugpy-1.8.1-cp311-cp311-win_amd64.whl", hash = "sha256:1a9fe0829c2b854757b4fd0a338d93bc17249a3bf69ecf765c61d4c522bb92a8"}, - {file = "debugpy-1.8.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:3ebb70ba1a6524d19fa7bb122f44b74170c447d5746a503e36adc244a20ac539"}, - {file = "debugpy-1.8.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2e658a9630f27534e63922ebf655a6ab60c370f4d2fc5c02a5b19baf4410ace"}, - {file = "debugpy-1.8.1-cp312-cp312-win32.whl", hash = "sha256:caad2846e21188797a1f17fc09c31b84c7c3c23baf2516fed5b40b378515bbf0"}, - {file = "debugpy-1.8.1-cp312-cp312-win_amd64.whl", hash = "sha256:edcc9f58ec0fd121a25bc950d4578df47428d72e1a0d66c07403b04eb93bcf98"}, - {file = "debugpy-1.8.1-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:7a3afa222f6fd3d9dfecd52729bc2e12c93e22a7491405a0ecbf9e1d32d45b39"}, - {file = "debugpy-1.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d915a18f0597ef685e88bb35e5d7ab968964b7befefe1aaea1eb5b2640b586c7"}, - {file = "debugpy-1.8.1-cp38-cp38-win32.whl", hash = "sha256:92116039b5500633cc8d44ecc187abe2dfa9b90f7a82bbf81d079fcdd506bae9"}, - {file = "debugpy-1.8.1-cp38-cp38-win_amd64.whl", hash = "sha256:e38beb7992b5afd9d5244e96ad5fa9135e94993b0c551ceebf3fe1a5d9beb234"}, - {file = "debugpy-1.8.1-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:bfb20cb57486c8e4793d41996652e5a6a885b4d9175dd369045dad59eaacea42"}, - {file = "debugpy-1.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efd3fdd3f67a7e576dd869c184c5dd71d9aaa36ded271939da352880c012e703"}, - {file = "debugpy-1.8.1-cp39-cp39-win32.whl", hash = "sha256:58911e8521ca0c785ac7a0539f1e77e0ce2df753f786188f382229278b4cdf23"}, - {file = "debugpy-1.8.1-cp39-cp39-win_amd64.whl", hash = "sha256:6df9aa9599eb05ca179fb0b810282255202a66835c6efb1d112d21ecb830ddd3"}, - {file = "debugpy-1.8.1-py2.py3-none-any.whl", hash = "sha256:28acbe2241222b87e255260c76741e1fbf04fdc3b6d094fcf57b6c6f75ce1242"}, - {file = "debugpy-1.8.1.zip", hash = "sha256:f696d6be15be87aef621917585f9bb94b1dc9e8aced570db1b8a6fc14e8f9b42"}, + {file = "debugpy-1.8.11-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:2b26fefc4e31ff85593d68b9022e35e8925714a10ab4858fb1b577a8a48cb8cd"}, + {file = "debugpy-1.8.11-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61bc8b3b265e6949855300e84dc93d02d7a3a637f2aec6d382afd4ceb9120c9f"}, + {file = "debugpy-1.8.11-cp310-cp310-win32.whl", hash = "sha256:c928bbf47f65288574b78518449edaa46c82572d340e2750889bbf8cd92f3737"}, + {file = "debugpy-1.8.11-cp310-cp310-win_amd64.whl", hash = "sha256:8da1db4ca4f22583e834dcabdc7832e56fe16275253ee53ba66627b86e304da1"}, + {file = "debugpy-1.8.11-cp311-cp311-macosx_14_0_universal2.whl", hash = "sha256:85de8474ad53ad546ff1c7c7c89230db215b9b8a02754d41cb5a76f70d0be296"}, + {file = "debugpy-1.8.11-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ffc382e4afa4aee367bf413f55ed17bd91b191dcaf979890af239dda435f2a1"}, + {file = "debugpy-1.8.11-cp311-cp311-win32.whl", hash = "sha256:40499a9979c55f72f4eb2fc38695419546b62594f8af194b879d2a18439c97a9"}, + {file = "debugpy-1.8.11-cp311-cp311-win_amd64.whl", hash = "sha256:987bce16e86efa86f747d5151c54e91b3c1e36acc03ce1ddb50f9d09d16ded0e"}, + {file = "debugpy-1.8.11-cp312-cp312-macosx_14_0_universal2.whl", hash = "sha256:84e511a7545d11683d32cdb8f809ef63fc17ea2a00455cc62d0a4dbb4ed1c308"}, + {file = "debugpy-1.8.11-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce291a5aca4985d82875d6779f61375e959208cdf09fcec40001e65fb0a54768"}, + {file = "debugpy-1.8.11-cp312-cp312-win32.whl", hash = "sha256:28e45b3f827d3bf2592f3cf7ae63282e859f3259db44ed2b129093ca0ac7940b"}, + {file = "debugpy-1.8.11-cp312-cp312-win_amd64.whl", hash = "sha256:44b1b8e6253bceada11f714acf4309ffb98bfa9ac55e4fce14f9e5d4484287a1"}, + {file = "debugpy-1.8.11-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:8988f7163e4381b0da7696f37eec7aca19deb02e500245df68a7159739bbd0d3"}, + {file = "debugpy-1.8.11-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c1f6a173d1140e557347419767d2b14ac1c9cd847e0b4c5444c7f3144697e4e"}, + {file = "debugpy-1.8.11-cp313-cp313-win32.whl", hash = "sha256:bb3b15e25891f38da3ca0740271e63ab9db61f41d4d8541745cfc1824252cb28"}, + {file = "debugpy-1.8.11-cp313-cp313-win_amd64.whl", hash = "sha256:d8768edcbeb34da9e11bcb8b5c2e0958d25218df7a6e56adf415ef262cd7b6d1"}, + {file = "debugpy-1.8.11-cp38-cp38-macosx_14_0_x86_64.whl", hash = "sha256:ad7efe588c8f5cf940f40c3de0cd683cc5b76819446abaa50dc0829a30c094db"}, + {file = "debugpy-1.8.11-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:189058d03a40103a57144752652b3ab08ff02b7595d0ce1f651b9acc3a3a35a0"}, + {file = "debugpy-1.8.11-cp38-cp38-win32.whl", hash = "sha256:32db46ba45849daed7ccf3f2e26f7a386867b077f39b2a974bb5c4c2c3b0a280"}, + {file = "debugpy-1.8.11-cp38-cp38-win_amd64.whl", hash = "sha256:116bf8342062246ca749013df4f6ea106f23bc159305843491f64672a55af2e5"}, + {file = "debugpy-1.8.11-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:654130ca6ad5de73d978057eaf9e582244ff72d4574b3e106fb8d3d2a0d32458"}, + {file = "debugpy-1.8.11-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23dc34c5e03b0212fa3c49a874df2b8b1b8fda95160bd79c01eb3ab51ea8d851"}, + {file = "debugpy-1.8.11-cp39-cp39-win32.whl", hash = "sha256:52d8a3166c9f2815bfae05f386114b0b2d274456980d41f320299a8d9a5615a7"}, + {file = "debugpy-1.8.11-cp39-cp39-win_amd64.whl", hash = "sha256:52c3cf9ecda273a19cc092961ee34eb9ba8687d67ba34cc7b79a521c1c64c4c0"}, + {file = "debugpy-1.8.11-py2.py3-none-any.whl", hash = "sha256:0e22f846f4211383e6a416d04b4c13ed174d24cc5d43f5fd52e7821d0ebc8920"}, + {file = "debugpy-1.8.11.tar.gz", hash = "sha256:6ad2688b69235c43b020e04fecccdf6a96c8943ca9c2fb340b8adc103c655e57"}, ] [[package]] @@ -571,24 +595,24 @@ files = [ [[package]] name = "distlib" -version = "0.3.8" +version = "0.3.9" description = "Distribution utilities" optional = false python-versions = "*" files = [ - {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, - {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, + {file = "distlib-0.3.9-py2.py3-none-any.whl", hash = "sha256:47f8c22fd27c27e25a65601af709b38e4f0a45ea4fc2e710f65755fa8caaaf87"}, + {file = "distlib-0.3.9.tar.gz", hash = "sha256:a60f20dea646b8a33f3e7772f74dc0b2d0772d2837ee1342a00645c81edf9403"}, ] [[package]] name = "exceptiongroup" -version = "1.2.1" +version = "1.2.2" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" files = [ - {file = "exceptiongroup-1.2.1-py3-none-any.whl", hash = "sha256:5258b9ed329c5bbdd31a309f53cbfb0b155341807f6ff7606a1e801a891b29ad"}, - {file = "exceptiongroup-1.2.1.tar.gz", hash = "sha256:a4785e48b045528f5bfe627b6ad554ff32def154f42372786903b7abcfe1aa16"}, + {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"}, + {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"}, ] [package.extras] @@ -596,13 +620,13 @@ test = ["pytest (>=6)"] [[package]] name = "executing" -version = "2.0.1" +version = "2.1.0" description = "Get the currently executing AST node of a frame, and other information" optional = false -python-versions = ">=3.5" +python-versions = ">=3.8" files = [ - {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, - {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, + {file = "executing-2.1.0-py2.py3-none-any.whl", hash = "sha256:8d63781349375b5ebccc3142f4b30350c0cd9c79f921cde38be2be4637e98eaf"}, + {file = "executing-2.1.0.tar.gz", hash = "sha256:8ea27ddd260da8150fa5a708269c4a10e76161e2496ec3e587da9e3c0fe4b9ab"}, ] [package.extras] @@ -610,13 +634,13 @@ tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipyth [[package]] name = "fastjsonschema" -version = "2.19.1" +version = "2.21.1" description = "Fastest Python implementation of JSON schema" optional = false python-versions = "*" files = [ - {file = "fastjsonschema-2.19.1-py3-none-any.whl", hash = "sha256:3672b47bc94178c9f23dbb654bf47440155d4db9df5f7bc47643315f9c405cd0"}, - {file = "fastjsonschema-2.19.1.tar.gz", hash = "sha256:e3126a94bdc4623d3de4485f8d468a12f02a67921315ddc87836d6e456dc789d"}, + {file = "fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667"}, + {file = "fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4"}, ] [package.extras] @@ -624,34 +648,34 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc [[package]] name = "filelock" -version = "3.13.4" +version = "3.16.1" description = "A platform independent file lock." optional = false python-versions = ">=3.8" files = [ - {file = "filelock-3.13.4-py3-none-any.whl", hash = "sha256:404e5e9253aa60ad457cae1be07c0f0ca90a63931200a47d9b6a6af84fd7b45f"}, - {file = "filelock-3.13.4.tar.gz", hash = "sha256:d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4"}, + {file = "filelock-3.16.1-py3-none-any.whl", hash = "sha256:2082e5703d51fbf98ea75855d9d5527e33d8ff23099bec374a134febee6946b0"}, + {file = "filelock-3.16.1.tar.gz", hash = "sha256:c249fbfcd5db47e5e2d6d62198e565475ee65e4831e2561c8e313fa7eb961435"}, ] [package.extras] -docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] -testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8.0.1)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] -typing = ["typing-extensions (>=4.8)"] +docs = ["furo (>=2024.8.6)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2.4.1)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.6.1)", "diff-cover (>=9.2)", "pytest (>=8.3.3)", "pytest-asyncio (>=0.24)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "pytest-timeout (>=2.3.1)", "virtualenv (>=20.26.4)"] +typing = ["typing-extensions (>=4.12.2)"] [[package]] name = "flake8" -version = "7.0.0" +version = "7.1.1" description = "the modular source code checker: pep8 pyflakes and co" optional = false python-versions = ">=3.8.1" files = [ - {file = "flake8-7.0.0-py2.py3-none-any.whl", hash = "sha256:a6dfbb75e03252917f2473ea9653f7cd799c3064e54d4c8140044c5c065f53c3"}, - {file = "flake8-7.0.0.tar.gz", hash = "sha256:33f96621059e65eec474169085dc92bf26e7b2d47366b70be2f67ab80dc25132"}, + {file = "flake8-7.1.1-py2.py3-none-any.whl", hash = "sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213"}, + {file = "flake8-7.1.1.tar.gz", hash = "sha256:049d058491e228e03e67b390f311bbf88fce2dbaa8fa673e7aea87b7198b8d38"}, ] [package.dependencies] mccabe = ">=0.7.0,<0.8.0" -pycodestyle = ">=2.11.0,<2.12.0" +pycodestyle = ">=2.12.0,<2.13.0" pyflakes = ">=3.2.0,<3.3.0" [[package]] @@ -693,13 +717,13 @@ files = [ [[package]] name = "httpcore" -version = "1.0.5" +version = "1.0.7" description = "A minimal low-level HTTP client." optional = false python-versions = ">=3.8" files = [ - {file = "httpcore-1.0.5-py3-none-any.whl", hash = "sha256:421f18bac248b25d310f3cacd198d55b8e6125c107797b609ff9b7a6ba7991b5"}, - {file = "httpcore-1.0.5.tar.gz", hash = "sha256:34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61"}, + {file = "httpcore-1.0.7-py3-none-any.whl", hash = "sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd"}, + {file = "httpcore-1.0.7.tar.gz", hash = "sha256:8551cb62a169ec7162ac7be8d4817d561f60e08eaa485234898414bb5a8a0b4c"}, ] [package.dependencies] @@ -710,17 +734,17 @@ h11 = ">=0.13,<0.15" asyncio = ["anyio (>=4.0,<5.0)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] -trio = ["trio (>=0.22.0,<0.26.0)"] +trio = ["trio (>=0.22.0,<1.0)"] [[package]] name = "httpx" -version = "0.27.0" +version = "0.28.1" description = "The next generation HTTP client." optional = false python-versions = ">=3.8" files = [ - {file = "httpx-0.27.0-py3-none-any.whl", hash = "sha256:71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"}, - {file = "httpx-0.27.0.tar.gz", hash = "sha256:a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5"}, + {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, + {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, ] [package.dependencies] @@ -728,43 +752,50 @@ anyio = "*" certifi = "*" httpcore = "==1.*" idna = "*" -sniffio = "*" [package.extras] brotli = ["brotli", "brotlicffi"] cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "idna" -version = "3.7" +version = "3.10" description = "Internationalized Domain Names in Applications (IDNA)" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" files = [ - {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, - {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, + {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, + {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, ] +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + [[package]] name = "importlib-metadata" -version = "7.1.0" +version = "8.5.0" description = "Read metadata from Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-7.1.0-py3-none-any.whl", hash = "sha256:30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570"}, - {file = "importlib_metadata-7.1.0.tar.gz", hash = "sha256:b78938b926ee8d5f020fc4772d487045805a55ddbad2ecf21c6d60938dc7fcd2"}, + {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, + {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, ] [package.dependencies] -zipp = ">=0.5" +zipp = ">=3.20" [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +cover = ["pytest-cov"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +enabler = ["pytest-enabler (>=2.2)"] perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] +test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] +type = ["pytest-mypy"] [[package]] name = "iniconfig" @@ -779,13 +810,13 @@ files = [ [[package]] name = "ipykernel" -version = "6.29.4" +version = "6.29.5" description = "IPython Kernel for Jupyter" optional = false python-versions = ">=3.8" files = [ - {file = "ipykernel-6.29.4-py3-none-any.whl", hash = "sha256:1181e653d95c6808039c509ef8e67c4126b3b3af7781496c7cbfb5ed938a27da"}, - {file = "ipykernel-6.29.4.tar.gz", hash = "sha256:3d44070060f9475ac2092b760123fadf105d2e2493c24848b6691a7c4f42af5c"}, + {file = "ipykernel-6.29.5-py3-none-any.whl", hash = "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5"}, + {file = "ipykernel-6.29.5.tar.gz", hash = "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215"}, ] [package.dependencies] @@ -812,58 +843,60 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio [[package]] name = "ipython" -version = "8.18.1" +version = "8.12.3" description = "IPython: Productive Interactive Computing" optional = false -python-versions = ">=3.9" +python-versions = ">=3.8" files = [ - {file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"}, - {file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"}, + {file = "ipython-8.12.3-py3-none-any.whl", hash = "sha256:b0340d46a933d27c657b211a329d0be23793c36595acf9e6ef4164bc01a1804c"}, + {file = "ipython-8.12.3.tar.gz", hash = "sha256:3910c4b54543c2ad73d06579aa771041b7d5707b033bd488669b4cf544e3b363"}, ] [package.dependencies] +appnope = {version = "*", markers = "sys_platform == \"darwin\""} +backcall = "*" colorama = {version = "*", markers = "sys_platform == \"win32\""} decorator = "*" -exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} jedi = ">=0.16" matplotlib-inline = "*" pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} -prompt-toolkit = ">=3.0.41,<3.1.0" +pickleshare = "*" +prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" pygments = ">=2.4.0" stack-data = "*" traitlets = ">=5" typing-extensions = {version = "*", markers = "python_version < \"3.10\""} [package.extras] -all = ["black", "curio", "docrepr", "exceptiongroup", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] black = ["black"] -doc = ["docrepr", "exceptiongroup", "ipykernel", "matplotlib", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] kernel = ["ipykernel"] nbconvert = ["nbconvert"] nbformat = ["nbformat"] notebook = ["ipywidgets", "notebook"] parallel = ["ipyparallel"] qtconsole = ["qtconsole"] -test = ["pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath"] -test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath", "trio"] +test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] [[package]] name = "ipywidgets" -version = "8.1.2" +version = "8.1.5" description = "Jupyter interactive widgets" optional = false python-versions = ">=3.7" files = [ - {file = "ipywidgets-8.1.2-py3-none-any.whl", hash = "sha256:bbe43850d79fb5e906b14801d6c01402857996864d1e5b6fa62dd2ee35559f60"}, - {file = "ipywidgets-8.1.2.tar.gz", hash = "sha256:d0b9b41e49bae926a866e613a39b0f0097745d2b9f1f3dd406641b4a57ec42c9"}, + {file = "ipywidgets-8.1.5-py3-none-any.whl", hash = "sha256:3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245"}, + {file = "ipywidgets-8.1.5.tar.gz", hash = "sha256:870e43b1a35656a80c18c9503bbf2d16802db1cb487eec6fab27d683381dde17"}, ] [package.dependencies] comm = ">=0.1.3" ipython = ">=6.1.0" -jupyterlab-widgets = ">=3.0.10,<3.1.0" +jupyterlab-widgets = ">=3.0.12,<3.1.0" traitlets = ">=4.3.1" -widgetsnbextension = ">=4.0.10,<4.1.0" +widgetsnbextension = ">=4.0.12,<4.1.0" [package.extras] test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] @@ -884,32 +917,32 @@ arrow = ">=0.15.0" [[package]] name = "jedi" -version = "0.19.1" +version = "0.19.2" description = "An autocompletion tool for Python that can be used for text editors." optional = false python-versions = ">=3.6" files = [ - {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, - {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, + {file = "jedi-0.19.2-py2.py3-none-any.whl", hash = "sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9"}, + {file = "jedi-0.19.2.tar.gz", hash = "sha256:4770dc3de41bde3966b02eb84fbcf557fb33cce26ad23da12c742fb50ecb11f0"}, ] [package.dependencies] -parso = ">=0.8.3,<0.9.0" +parso = ">=0.8.4,<0.9.0" [package.extras] docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] -testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<9.0.0)"] [[package]] name = "jinja2" -version = "3.1.3" +version = "3.1.5" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" files = [ - {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, - {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, + {file = "jinja2-3.1.5-py3-none-any.whl", hash = "sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb"}, + {file = "jinja2-3.1.5.tar.gz", hash = "sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb"}, ] [package.dependencies] @@ -920,35 +953,38 @@ i18n = ["Babel (>=2.7)"] [[package]] name = "json5" -version = "0.9.25" +version = "0.10.0" description = "A Python implementation of the JSON5 data format." optional = false -python-versions = ">=3.8" +python-versions = ">=3.8.0" files = [ - {file = "json5-0.9.25-py3-none-any.whl", hash = "sha256:34ed7d834b1341a86987ed52f3f76cd8ee184394906b6e22a1e0deb9ab294e8f"}, - {file = "json5-0.9.25.tar.gz", hash = "sha256:548e41b9be043f9426776f05df8635a00fe06104ea51ed24b67f908856e151ae"}, + {file = "json5-0.10.0-py3-none-any.whl", hash = "sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa"}, + {file = "json5-0.10.0.tar.gz", hash = "sha256:e66941c8f0a02026943c52c2eb34ebeb2a6f819a0be05920a6f5243cd30fd559"}, ] +[package.extras] +dev = ["build (==1.2.2.post1)", "coverage (==7.5.3)", "mypy (==1.13.0)", "pip (==24.3.1)", "pylint (==3.2.3)", "ruff (==0.7.3)", "twine (==5.1.1)", "uv (==0.5.1)"] + [[package]] name = "jsonpointer" -version = "2.4" +version = "3.0.0" description = "Identify specific nodes in a JSON document (RFC 6901)" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +python-versions = ">=3.7" files = [ - {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, - {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, + {file = "jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942"}, + {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"}, ] [[package]] name = "jsonschema" -version = "4.21.1" +version = "4.23.0" description = "An implementation of JSON Schema validation for Python" optional = false python-versions = ">=3.8" files = [ - {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, - {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, + {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, + {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, ] [package.dependencies] @@ -963,11 +999,11 @@ rfc3339-validator = {version = "*", optional = true, markers = "extra == \"forma rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} rpds-py = ">=0.7.1" uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -webcolors = {version = ">=1.11", optional = true, markers = "extra == \"format-nongpl\""} +webcolors = {version = ">=24.6.0", optional = true, markers = "extra == \"format-nongpl\""} [package.extras] format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] -format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=24.6.0)"] [[package]] name = "jsonschema-specifications" @@ -985,33 +1021,32 @@ referencing = ">=0.31.0" [[package]] name = "jupyter" -version = "1.0.0" +version = "1.1.1" description = "Jupyter metapackage. Install all the Jupyter components in one go." optional = false python-versions = "*" files = [ - {file = "jupyter-1.0.0-py2.py3-none-any.whl", hash = "sha256:5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78"}, - {file = "jupyter-1.0.0.tar.gz", hash = "sha256:d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f"}, - {file = "jupyter-1.0.0.zip", hash = "sha256:3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7"}, + {file = "jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83"}, + {file = "jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a"}, ] [package.dependencies] ipykernel = "*" ipywidgets = "*" jupyter-console = "*" +jupyterlab = "*" nbconvert = "*" notebook = "*" -qtconsole = "*" [[package]] name = "jupyter-client" -version = "8.6.1" +version = "8.6.3" description = "Jupyter protocol implementation and client libraries" optional = false python-versions = ">=3.8" files = [ - {file = "jupyter_client-8.6.1-py3-none-any.whl", hash = "sha256:3b7bd22f058434e3b9a7ea4b1500ed47de2713872288c0d511d19926f99b459f"}, - {file = "jupyter_client-8.6.1.tar.gz", hash = "sha256:e842515e2bab8e19186d89fdfea7abd15e39dd581f94e399f00e2af5a1652d3f"}, + {file = "jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f"}, + {file = "jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419"}, ] [package.dependencies] @@ -1024,7 +1059,7 @@ traitlets = ">=5.3" [package.extras] docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] [[package]] name = "jupyter-console" @@ -1112,13 +1147,13 @@ jupyter-server = ">=1.1.2" [[package]] name = "jupyter-server" -version = "2.14.0" +version = "2.14.2" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." optional = false python-versions = ">=3.8" files = [ - {file = "jupyter_server-2.14.0-py3-none-any.whl", hash = "sha256:fb6be52c713e80e004fac34b35a0990d6d36ba06fd0a2b2ed82b899143a64210"}, - {file = "jupyter_server-2.14.0.tar.gz", hash = "sha256:659154cea512083434fd7c93b7fe0897af7a2fd0b9dd4749282b42eaac4ae677"}, + {file = "jupyter_server-2.14.2-py3-none-any.whl", hash = "sha256:47ff506127c2f7851a17bf4713434208fc490955d0e8632e95014a9a9afbeefd"}, + {file = "jupyter_server-2.14.2.tar.gz", hash = "sha256:66095021aa9638ced276c248b1d81862e4c50f292d575920bbe960de1c56b12b"}, ] [package.dependencies] @@ -1143,7 +1178,7 @@ traitlets = ">=5.6.0" websocket-client = ">=1.7" [package.extras] -docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +docs = ["ipykernel", "jinja2", "jupyter-client", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0,<9)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.7)", "pytest-timeout", "requests"] [[package]] @@ -1167,13 +1202,13 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.1.6" +version = "4.3.4" description = "JupyterLab computational environment" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab-4.1.6-py3-none-any.whl", hash = "sha256:cf3e862bc10dbf4331e4eb37438634f813c238cfc62c71c640b3b3b2caa089a8"}, - {file = "jupyterlab-4.1.6.tar.gz", hash = "sha256:7935f36ba26eb615183a4f5c2bbca5791b5108ce2a00b5505f8cfd100d53648e"}, + {file = "jupyterlab-4.3.4-py3-none-any.whl", hash = "sha256:b754c2601c5be6adf87cb5a1d8495d653ffb945f021939f77776acaa94dae952"}, + {file = "jupyterlab-4.3.4.tar.gz", hash = "sha256:f0bb9b09a04766e3423cccc2fc23169aa2ffedcdf8713e9e0fb33cac0b6859d0"}, ] [package.dependencies] @@ -1185,19 +1220,20 @@ jinja2 = ">=3.0.3" jupyter-core = "*" jupyter-lsp = ">=2.0.0" jupyter-server = ">=2.4.0,<3" -jupyterlab-server = ">=2.19.0,<3" +jupyterlab-server = ">=2.27.1,<3" notebook-shim = ">=0.2" packaging = "*" +setuptools = ">=40.8.0" tomli = {version = ">=1.2.2", markers = "python_version < \"3.11\""} tornado = ">=6.2.0" traitlets = "*" [package.extras] -dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.2.0)"] -docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<7.3.0)", "sphinx-copybutton"] -docs-screenshots = ["altair (==5.2.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.1)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.0.post6)", "matplotlib (==3.8.2)", "nbconvert (>=7.0.0)", "pandas (==2.2.0)", "scipy (==1.12.0)", "vega-datasets (==0.9.0)"] +dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.6.9)"] +docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<8.1.0)", "sphinx-copybutton"] +docs-screenshots = ["altair (==5.4.1)", "ipython (==8.16.1)", "ipywidgets (==8.1.5)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.2.post3)", "matplotlib (==3.9.2)", "nbconvert (>=7.0.0)", "pandas (==2.2.3)", "scipy (==1.14.1)", "vega-datasets (==0.9.0)"] test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] -upgrade-extension = ["copier (>=8.0,<9.0)", "jinja2-time (<0.3)", "pydantic (<2.0)", "pyyaml-include (<2.0)", "tomli-w (<2.0)"] +upgrade-extension = ["copier (>=9,<10)", "jinja2-time (<0.3)", "pydantic (<3.0)", "pyyaml-include (<3.0)", "tomli-w (<2.0)"] [[package]] name = "jupyterlab-pygments" @@ -1212,13 +1248,13 @@ files = [ [[package]] name = "jupyterlab-server" -version = "2.26.0" +version = "2.27.3" description = "A set of server components for JupyterLab and JupyterLab like applications." optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab_server-2.26.0-py3-none-any.whl", hash = "sha256:54622cbd330526a385ee0c1fdccdff3a1e7219bf3e864a335284a1270a1973df"}, - {file = "jupyterlab_server-2.26.0.tar.gz", hash = "sha256:9b3ba91cf2837f7f124fca36d63f3ca80ace2bed4898a63dd47e6598c1ab006f"}, + {file = "jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4"}, + {file = "jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4"}, ] [package.dependencies] @@ -1238,13 +1274,13 @@ test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-v [[package]] name = "jupyterlab-widgets" -version = "3.0.10" +version = "3.0.13" description = "Jupyter interactive widgets for JupyterLab" optional = false python-versions = ">=3.7" files = [ - {file = "jupyterlab_widgets-3.0.10-py3-none-any.whl", hash = "sha256:dd61f3ae7a5a7f80299e14585ce6cf3d6925a96c9103c978eda293197730cb64"}, - {file = "jupyterlab_widgets-3.0.10.tar.gz", hash = "sha256:04f2ac04976727e4f9d0fa91cdc2f1ab860f965e504c29dbd6a65c882c9d04c0"}, + {file = "jupyterlab_widgets-3.0.13-py3-none-any.whl", hash = "sha256:e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54"}, + {file = "jupyterlab_widgets-3.0.13.tar.gz", hash = "sha256:a2966d385328c1942b683a8cd96b89b8dd82c8b8f81dda902bb2bc06d46f5bed"}, ] [[package]] @@ -1359,24 +1395,27 @@ files = [ [[package]] name = "mistune" -version = "3.0.2" +version = "3.1.0" description = "A sane and fast Markdown parser with useful plugins and renderers" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205"}, - {file = "mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8"}, + {file = "mistune-3.1.0-py3-none-any.whl", hash = "sha256:b05198cf6d671b3deba6c87ec6cf0d4eb7b72c524636eddb6dbf13823b52cee1"}, + {file = "mistune-3.1.0.tar.gz", hash = "sha256:dbcac2f78292b9dc066cd03b7a3a26b62d85f8159f2ea5fd28e55df79908d667"}, ] +[package.dependencies] +typing-extensions = {version = "*", markers = "python_version < \"3.11\""} + [[package]] name = "nbclient" -version = "0.10.0" +version = "0.10.1" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." optional = false python-versions = ">=3.8.0" files = [ - {file = "nbclient-0.10.0-py3-none-any.whl", hash = "sha256:f13e3529332a1f1f81d82a53210322476a168bb7090a0289c795fe9cc11c9d3f"}, - {file = "nbclient-0.10.0.tar.gz", hash = "sha256:4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09"}, + {file = "nbclient-0.10.1-py3-none-any.whl", hash = "sha256:949019b9240d66897e442888cfb618f69ef23dc71c01cb5fced8499c2cfc084d"}, + {file = "nbclient-0.10.1.tar.gz", hash = "sha256:3e93e348ab27e712acd46fccd809139e356eb9a31aab641d1a7991a6eb4e6f68"}, ] [package.dependencies] @@ -1387,18 +1426,18 @@ traitlets = ">=5.4" [package.extras] dev = ["pre-commit"] -docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"] +docs = ["autodoc-traits", "flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "mock", "moto", "myst-parser", "nbconvert (>=7.0.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling", "testpath", "xmltodict"] test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] [[package]] name = "nbconvert" -version = "7.16.3" +version = "7.16.4" description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." optional = false python-versions = ">=3.8" files = [ - {file = "nbconvert-7.16.3-py3-none-any.whl", hash = "sha256:ddeff14beeeedf3dd0bc506623e41e4507e551736de59df69a91f86700292b3b"}, - {file = "nbconvert-7.16.3.tar.gz", hash = "sha256:a6733b78ce3d47c3f85e504998495b07e6ea9cf9bf6ec1c98dda63ec6ad19142"}, + {file = "nbconvert-7.16.4-py3-none-any.whl", hash = "sha256:05873c620fe520b6322bf8a5ad562692343fe3452abda5765c7a34b7d1aa3eb3"}, + {file = "nbconvert-7.16.4.tar.gz", hash = "sha256:86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4"}, ] [package.dependencies] @@ -1420,9 +1459,9 @@ tinycss2 = "*" traitlets = ">=5.1" [package.extras] -all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"] +all = ["flaky", "ipykernel", "ipython", "ipywidgets (>=7.5)", "myst-parser", "nbsphinx (>=0.2.12)", "playwright", "pydata-sphinx-theme", "pyqtwebengine (>=5.15)", "pytest (>=7)", "sphinx (==5.0.2)", "sphinxcontrib-spelling", "tornado (>=6.1)"] docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] -qtpdf = ["nbconvert[qtpng]"] +qtpdf = ["pyqtwebengine (>=5.15)"] qtpng = ["pyqtwebengine (>=5.15)"] serve = ["tornado (>=6.1)"] test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest (>=7)"] @@ -1462,26 +1501,26 @@ files = [ [[package]] name = "notebook" -version = "7.1.3" +version = "7.3.2" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" optional = false python-versions = ">=3.8" files = [ - {file = "notebook-7.1.3-py3-none-any.whl", hash = "sha256:919b911e59f41f6e3857ce93c9d93535ba66bb090059712770e5968c07e1004d"}, - {file = "notebook-7.1.3.tar.gz", hash = "sha256:41fcebff44cf7bb9377180808bcbae066629b55d8c7722f1ebbe75ca44f9cfc1"}, + {file = "notebook-7.3.2-py3-none-any.whl", hash = "sha256:e5f85fc59b69d3618d73cf27544418193ff8e8058d5bf61d315ce4f473556288"}, + {file = "notebook-7.3.2.tar.gz", hash = "sha256:705e83a1785f45b383bf3ee13cb76680b92d24f56fb0c7d2136fe1d850cd3ca8"}, ] [package.dependencies] jupyter-server = ">=2.4.0,<3" -jupyterlab = ">=4.1.1,<4.2" -jupyterlab-server = ">=2.22.1,<3" +jupyterlab = ">=4.3.4,<4.4" +jupyterlab-server = ">=2.27.1,<3" notebook-shim = ">=0.2,<0.3" tornado = ">=6.2.0" [package.extras] dev = ["hatch", "pre-commit"] docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.22.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] +test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.27.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] [[package]] name = "notebook-shim" @@ -1500,6 +1539,60 @@ jupyter-server = ">=1.8,<3" [package.extras] test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] +[[package]] +name = "numpy" +version = "2.0.2" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "numpy-2.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:51129a29dbe56f9ca83438b706e2e69a39892b5eda6cedcb6b0c9fdc9b0d3ece"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f15975dfec0cf2239224d80e32c3170b1d168335eaedee69da84fbe9f1f9cd04"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:8c5713284ce4e282544c68d1c3b2c7161d38c256d2eefc93c1d683cf47683e66"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:becfae3ddd30736fe1889a37f1f580e245ba79a5855bff5f2a29cb3ccc22dd7b"}, + {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2da5960c3cf0df7eafefd806d4e612c5e19358de82cb3c343631188991566ccd"}, + {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:496f71341824ed9f3d2fd36cf3ac57ae2e0165c143b55c3a035ee219413f3318"}, + {file = "numpy-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a61ec659f68ae254e4d237816e33171497e978140353c0c2038d46e63282d0c8"}, + {file = "numpy-2.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d731a1c6116ba289c1e9ee714b08a8ff882944d4ad631fd411106a30f083c326"}, + {file = "numpy-2.0.2-cp310-cp310-win32.whl", hash = "sha256:984d96121c9f9616cd33fbd0618b7f08e0cfc9600a7ee1d6fd9b239186d19d97"}, + {file = "numpy-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:c7b0be4ef08607dd04da4092faee0b86607f111d5ae68036f16cc787e250a131"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:49ca4decb342d66018b01932139c0961a8f9ddc7589611158cb3c27cbcf76448"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:11a76c372d1d37437857280aa142086476136a8c0f373b2e648ab2c8f18fb195"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:807ec44583fd708a21d4a11d94aedf2f4f3c3719035c76a2bbe1fe8e217bdc57"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:8cafab480740e22f8d833acefed5cc87ce276f4ece12fdaa2e8903db2f82897a"}, + {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a15f476a45e6e5a3a79d8a14e62161d27ad897381fecfa4a09ed5322f2085669"}, + {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13e689d772146140a252c3a28501da66dfecd77490b498b168b501835041f951"}, + {file = "numpy-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9ea91dfb7c3d1c56a0e55657c0afb38cf1eeae4544c208dc465c3c9f3a7c09f9"}, + {file = "numpy-2.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c1c9307701fec8f3f7a1e6711f9089c06e6284b3afbbcd259f7791282d660a15"}, + {file = "numpy-2.0.2-cp311-cp311-win32.whl", hash = "sha256:a392a68bd329eafac5817e5aefeb39038c48b671afd242710b451e76090e81f4"}, + {file = "numpy-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:286cd40ce2b7d652a6f22efdfc6d1edf879440e53e76a75955bc0c826c7e64dc"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:df55d490dea7934f330006d0f81e8551ba6010a5bf035a249ef61a94f21c500b"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8df823f570d9adf0978347d1f926b2a867d5608f434a7cff7f7908c6570dcf5e"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:9a92ae5c14811e390f3767053ff54eaee3bf84576d99a2456391401323f4ec2c"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:a842d573724391493a97a62ebbb8e731f8a5dcc5d285dfc99141ca15a3302d0c"}, + {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c05e238064fc0610c840d1cf6a13bf63d7e391717d247f1bf0318172e759e692"}, + {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0123ffdaa88fa4ab64835dcbde75dcdf89c453c922f18dced6e27c90d1d0ec5a"}, + {file = "numpy-2.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:96a55f64139912d61de9137f11bf39a55ec8faec288c75a54f93dfd39f7eb40c"}, + {file = "numpy-2.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec9852fb39354b5a45a80bdab5ac02dd02b15f44b3804e9f00c556bf24b4bded"}, + {file = "numpy-2.0.2-cp312-cp312-win32.whl", hash = "sha256:671bec6496f83202ed2d3c8fdc486a8fc86942f2e69ff0e986140339a63bcbe5"}, + {file = "numpy-2.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:cfd41e13fdc257aa5778496b8caa5e856dc4896d4ccf01841daee1d96465467a"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9059e10581ce4093f735ed23f3b9d283b9d517ff46009ddd485f1747eb22653c"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:423e89b23490805d2a5a96fe40ec507407b8ee786d66f7328be214f9679df6dd"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:2b2955fa6f11907cf7a70dab0d0755159bca87755e831e47932367fc8f2f2d0b"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:97032a27bd9d8988b9a97a8c4d2c9f2c15a81f61e2f21404d7e8ef00cb5be729"}, + {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e795a8be3ddbac43274f18588329c72939870a16cae810c2b73461c40718ab1"}, + {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f26b258c385842546006213344c50655ff1555a9338e2e5e02a0756dc3e803dd"}, + {file = "numpy-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5fec9451a7789926bcf7c2b8d187292c9f93ea30284802a0ab3f5be8ab36865d"}, + {file = "numpy-2.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:9189427407d88ff25ecf8f12469d4d39d35bee1db5d39fc5c168c6f088a6956d"}, + {file = "numpy-2.0.2-cp39-cp39-win32.whl", hash = "sha256:905d16e0c60200656500c95b6b8dca5d109e23cb24abc701d41c02d74c6b3afa"}, + {file = "numpy-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:a3f4ab0caa7f053f6797fcd4e1e25caee367db3112ef2b6ef82d749530768c73"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:7f0a0c6f12e07fa94133c8a67404322845220c06a9e80e85999afe727f7438b8"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_14_0_x86_64.whl", hash = "sha256:312950fdd060354350ed123c0e25a71327d3711584beaef30cdaa93320c392d4"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26df23238872200f63518dd2aa984cfca675d82469535dc7162dc2ee52d9dd5c"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a46288ec55ebbd58947d31d72be2c63cbf839f0a63b49cb755022310792a3385"}, + {file = "numpy-2.0.2.tar.gz", hash = "sha256:883c987dee1880e2a864ab0dc9892292582510604156762362d9326444636e78"}, +] + [[package]] name = "orderedmultidict" version = "1.0.1" @@ -1527,15 +1620,78 @@ files = [ [[package]] name = "packaging" -version = "24.0" +version = "24.2" description = "Core utilities for Python packages" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"}, - {file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"}, + {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, + {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, ] +[[package]] +name = "pandas" +version = "2.0.3" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, + {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, + {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, + {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, + {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, + {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, + {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, + {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, + {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, + {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, + {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, + {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, + {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, + {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, + {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, + {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, + {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, + {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, + {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, + {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, + {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, + {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, + {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, + {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, + {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, +] + +[package.dependencies] +numpy = {version = ">=1.20.3", markers = "python_version < \"3.10\""} +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.1" + +[package.extras] +all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] +aws = ["s3fs (>=2021.08.0)"] +clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] +compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] +computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] +feather = ["pyarrow (>=7.0.0)"] +fss = ["fsspec (>=2021.07.0)"] +gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] +hdf5 = ["tables (>=3.6.1)"] +html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] +mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] +parquet = ["pyarrow (>=7.0.0)"] +performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] +plot = ["matplotlib (>=3.6.1)"] +postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] +spss = ["pyreadstat (>=1.1.2)"] +sql-other = ["SQLAlchemy (>=1.4.16)"] +test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.6.3)"] + [[package]] name = "pandocfilters" version = "1.5.1" @@ -1576,20 +1732,32 @@ files = [ [package.dependencies] ptyprocess = ">=0.5" +[[package]] +name = "pickleshare" +version = "0.7.5" +description = "Tiny 'shelve'-like database with concurrency support" +optional = false +python-versions = "*" +files = [ + {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, + {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +] + [[package]] name = "platformdirs" -version = "4.2.0" -description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +version = "4.3.6" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.8" files = [ - {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, - {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, + {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, + {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, ] [package.extras] -docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] -test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"] +docs = ["furo (>=2024.8.6)", "proselint (>=0.14)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2.4)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=8.3.2)", "pytest-cov (>=5)", "pytest-mock (>=3.14)"] +type = ["mypy (>=1.11.2)"] [[package]] name = "pluggy" @@ -1608,13 +1776,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "prometheus-client" -version = "0.20.0" +version = "0.21.1" description = "Python client for the Prometheus monitoring system." optional = false python-versions = ">=3.8" files = [ - {file = "prometheus_client-0.20.0-py3-none-any.whl", hash = "sha256:cde524a85bce83ca359cc837f28b8c0db5cac7aa653a588fd7e84ba061c329e7"}, - {file = "prometheus_client-0.20.0.tar.gz", hash = "sha256:287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89"}, + {file = "prometheus_client-0.21.1-py3-none-any.whl", hash = "sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301"}, + {file = "prometheus_client-0.21.1.tar.gz", hash = "sha256:252505a722ac04b0456be05c05f75f45d760c2911ffc45f2a06bcaed9f3ae3fb"}, ] [package.extras] @@ -1622,13 +1790,13 @@ twisted = ["twisted"] [[package]] name = "prompt-toolkit" -version = "3.0.43" +version = "3.0.48" description = "Library for building powerful interactive command lines in Python" optional = false python-versions = ">=3.7.0" files = [ - {file = "prompt_toolkit-3.0.43-py3-none-any.whl", hash = "sha256:a11a29cb3bf0a28a387fe5122cdb649816a957cd9261dcedf8c9f1fef33eacf6"}, - {file = "prompt_toolkit-3.0.43.tar.gz", hash = "sha256:3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d"}, + {file = "prompt_toolkit-3.0.48-py3-none-any.whl", hash = "sha256:f49a827f90062e411f1ce1f854f2aedb3c23353244f8108b89283587397ac10e"}, + {file = "prompt_toolkit-3.0.48.tar.gz", hash = "sha256:d6623ab0477a80df74e646bdbc93621143f5caf104206aa29294d53de1a03d90"}, ] [package.dependencies] @@ -1636,31 +1804,33 @@ wcwidth = "*" [[package]] name = "psutil" -version = "5.9.8" +version = "6.1.1" description = "Cross-platform lib for process and system monitoring in Python." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ - {file = "psutil-5.9.8-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:26bd09967ae00920df88e0352a91cff1a78f8d69b3ecabbfe733610c0af486c8"}, - {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:05806de88103b25903dff19bb6692bd2e714ccf9e668d050d144012055cbca73"}, - {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:611052c4bc70432ec770d5d54f64206aa7203a101ec273a0cd82418c86503bb7"}, - {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:50187900d73c1381ba1454cf40308c2bf6f34268518b3f36a9b663ca87e65e36"}, - {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:02615ed8c5ea222323408ceba16c60e99c3f91639b07da6373fb7e6539abc56d"}, - {file = "psutil-5.9.8-cp27-none-win32.whl", hash = "sha256:36f435891adb138ed3c9e58c6af3e2e6ca9ac2f365efe1f9cfef2794e6c93b4e"}, - {file = "psutil-5.9.8-cp27-none-win_amd64.whl", hash = "sha256:bd1184ceb3f87651a67b2708d4c3338e9b10c5df903f2e3776b62303b26cb631"}, - {file = "psutil-5.9.8-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:aee678c8720623dc456fa20659af736241f575d79429a0e5e9cf88ae0605cc81"}, - {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cb6403ce6d8e047495a701dc7c5bd788add903f8986d523e3e20b98b733e421"}, - {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d06016f7f8625a1825ba3732081d77c94589dca78b7a3fc072194851e88461a4"}, - {file = "psutil-5.9.8-cp36-cp36m-win32.whl", hash = "sha256:7d79560ad97af658a0f6adfef8b834b53f64746d45b403f225b85c5c2c140eee"}, - {file = "psutil-5.9.8-cp36-cp36m-win_amd64.whl", hash = "sha256:27cc40c3493bb10de1be4b3f07cae4c010ce715290a5be22b98493509c6299e2"}, - {file = "psutil-5.9.8-cp37-abi3-win32.whl", hash = "sha256:bc56c2a1b0d15aa3eaa5a60c9f3f8e3e565303b465dbf57a1b730e7a2b9844e0"}, - {file = "psutil-5.9.8-cp37-abi3-win_amd64.whl", hash = "sha256:8db4c1b57507eef143a15a6884ca10f7c73876cdf5d51e713151c1236a0e68cf"}, - {file = "psutil-5.9.8-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:d16bbddf0693323b8c6123dd804100241da461e41d6e332fb0ba6058f630f8c8"}, - {file = "psutil-5.9.8.tar.gz", hash = "sha256:6be126e3225486dff286a8fb9a06246a5253f4c7c53b475ea5f5ac934e64194c"}, + {file = "psutil-6.1.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:9ccc4316f24409159897799b83004cb1e24f9819b0dcf9c0b68bdcb6cefee6a8"}, + {file = "psutil-6.1.1-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:ca9609c77ea3b8481ab005da74ed894035936223422dc591d6772b147421f777"}, + {file = "psutil-6.1.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:8df0178ba8a9e5bc84fed9cfa61d54601b371fbec5c8eebad27575f1e105c0d4"}, + {file = "psutil-6.1.1-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:1924e659d6c19c647e763e78670a05dbb7feaf44a0e9c94bf9e14dfc6ba50468"}, + {file = "psutil-6.1.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:018aeae2af92d943fdf1da6b58665124897cfc94faa2ca92098838f83e1b1bca"}, + {file = "psutil-6.1.1-cp27-none-win32.whl", hash = "sha256:6d4281f5bbca041e2292be3380ec56a9413b790579b8e593b1784499d0005dac"}, + {file = "psutil-6.1.1-cp27-none-win_amd64.whl", hash = "sha256:c777eb75bb33c47377c9af68f30e9f11bc78e0f07fbf907be4a5d70b2fe5f030"}, + {file = "psutil-6.1.1-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:fc0ed7fe2231a444fc219b9c42d0376e0a9a1a72f16c5cfa0f68d19f1a0663e8"}, + {file = "psutil-6.1.1-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:0bdd4eab935276290ad3cb718e9809412895ca6b5b334f5a9111ee6d9aff9377"}, + {file = "psutil-6.1.1-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b6e06c20c05fe95a3d7302d74e7097756d4ba1247975ad6905441ae1b5b66003"}, + {file = "psutil-6.1.1-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97f7cb9921fbec4904f522d972f0c0e1f4fabbdd4e0287813b21215074a0f160"}, + {file = "psutil-6.1.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:33431e84fee02bc84ea36d9e2c4a6d395d479c9dd9bba2376c1f6ee8f3a4e0b3"}, + {file = "psutil-6.1.1-cp36-cp36m-win32.whl", hash = "sha256:384636b1a64b47814437d1173be1427a7c83681b17a450bfc309a1953e329603"}, + {file = "psutil-6.1.1-cp36-cp36m-win_amd64.whl", hash = "sha256:8be07491f6ebe1a693f17d4f11e69d0dc1811fa082736500f649f79df7735303"}, + {file = "psutil-6.1.1-cp37-abi3-win32.whl", hash = "sha256:eaa912e0b11848c4d9279a93d7e2783df352b082f40111e078388701fd479e53"}, + {file = "psutil-6.1.1-cp37-abi3-win_amd64.whl", hash = "sha256:f35cfccb065fff93529d2afb4a2e89e363fe63ca1e4a5da22b603a85833c2649"}, + {file = "psutil-6.1.1.tar.gz", hash = "sha256:cf8496728c18f2d0b45198f06895be52f36611711746b7f30c464b422b50e2f5"}, ] [package.extras] -test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] +dev = ["abi3audit", "black", "check-manifest", "coverage", "packaging", "pylint", "pyperf", "pypinfo", "pytest-cov", "requests", "rstcheck", "ruff", "sphinx", "sphinx_rtd_theme", "toml-sort", "twine", "virtualenv", "vulture", "wheel"] +test = ["pytest", "pytest-xdist", "setuptools"] [[package]] name = "ptyprocess" @@ -1675,13 +1845,13 @@ files = [ [[package]] name = "pure-eval" -version = "0.2.2" +version = "0.2.3" description = "Safely evaluate AST nodes without side effects" optional = false python-versions = "*" files = [ - {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, - {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, + {file = "pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0"}, + {file = "pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42"}, ] [package.extras] @@ -1689,13 +1859,13 @@ tests = ["pytest"] [[package]] name = "pycodestyle" -version = "2.11.1" +version = "2.12.1" description = "Python style guide checker" optional = false python-versions = ">=3.8" files = [ - {file = "pycodestyle-2.11.1-py2.py3-none-any.whl", hash = "sha256:44fe31000b2d866f2e41841b18528a505fbd7fef9017b04eff4e2648a0fadc67"}, - {file = "pycodestyle-2.11.1.tar.gz", hash = "sha256:41ba0e7afc9752dfb53ced5489e89f8186be00e599e712660695b7a75ff2663f"}, + {file = "pycodestyle-2.12.1-py2.py3-none-any.whl", hash = "sha256:46f0fb92069a7c28ab7bb558f05bfc0110dac69a0cd23c61ea0040283a9d78b3"}, + {file = "pycodestyle-2.12.1.tar.gz", hash = "sha256:6838eae08bbce4f6accd5d5572075c63626a15ee3e6f842df996bf62f6d73521"}, ] [[package]] @@ -1711,109 +1881,131 @@ files = [ [[package]] name = "pydantic" -version = "2.7.0" +version = "2.10.4" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.7.0-py3-none-any.whl", hash = "sha256:9dee74a271705f14f9a1567671d144a851c675b072736f0a7b2608fd9e495352"}, - {file = "pydantic-2.7.0.tar.gz", hash = "sha256:b5ecdd42262ca2462e2624793551e80911a1e989f462910bb81aef974b4bb383"}, + {file = "pydantic-2.10.4-py3-none-any.whl", hash = "sha256:597e135ea68be3a37552fb524bc7d0d66dcf93d395acd93a00682f1efcb8ee3d"}, + {file = "pydantic-2.10.4.tar.gz", hash = "sha256:82f12e9723da6de4fe2ba888b5971157b3be7ad914267dea8f05f82b28254f06"}, ] [package.dependencies] -annotated-types = ">=0.4.0" -pydantic-core = "2.18.1" -typing-extensions = ">=4.6.1" +annotated-types = ">=0.6.0" +pydantic-core = "2.27.2" +typing-extensions = ">=4.12.2" [package.extras] email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] [[package]] name = "pydantic-core" -version = "2.18.1" +version = "2.27.2" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.18.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ee9cf33e7fe14243f5ca6977658eb7d1042caaa66847daacbd2117adb258b226"}, - {file = "pydantic_core-2.18.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b7bbb97d82659ac8b37450c60ff2e9f97e4eb0f8a8a3645a5568b9334b08b50"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df4249b579e75094f7e9bb4bd28231acf55e308bf686b952f43100a5a0be394c"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d0491006a6ad20507aec2be72e7831a42efc93193d2402018007ff827dc62926"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ae80f72bb7a3e397ab37b53a2b49c62cc5496412e71bc4f1277620a7ce3f52b"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:58aca931bef83217fca7a390e0486ae327c4af9c3e941adb75f8772f8eeb03a1"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1be91ad664fc9245404a789d60cba1e91c26b1454ba136d2a1bf0c2ac0c0505a"}, - {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:667880321e916a8920ef49f5d50e7983792cf59f3b6079f3c9dac2b88a311d17"}, - {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f7054fdc556f5421f01e39cbb767d5ec5c1139ea98c3e5b350e02e62201740c7"}, - {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:030e4f9516f9947f38179249778709a460a3adb516bf39b5eb9066fcfe43d0e6"}, - {file = "pydantic_core-2.18.1-cp310-none-win32.whl", hash = "sha256:2e91711e36e229978d92642bfc3546333a9127ecebb3f2761372e096395fc649"}, - {file = "pydantic_core-2.18.1-cp310-none-win_amd64.whl", hash = "sha256:9a29726f91c6cb390b3c2338f0df5cd3e216ad7a938762d11c994bb37552edb0"}, - {file = "pydantic_core-2.18.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:9ece8a49696669d483d206b4474c367852c44815fca23ac4e48b72b339807f80"}, - {file = "pydantic_core-2.18.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7a5d83efc109ceddb99abd2c1316298ced2adb4570410defe766851a804fcd5b"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7973c381283783cd1043a8c8f61ea5ce7a3a58b0369f0ee0ee975eaf2f2a1b"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:54c7375c62190a7845091f521add19b0f026bcf6ae674bdb89f296972272e86d"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd63cec4e26e790b70544ae5cc48d11b515b09e05fdd5eff12e3195f54b8a586"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:561cf62c8a3498406495cfc49eee086ed2bb186d08bcc65812b75fda42c38294"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68717c38a68e37af87c4da20e08f3e27d7e4212e99e96c3d875fbf3f4812abfc"}, - {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d5728e93d28a3c63ee513d9ffbac9c5989de8c76e049dbcb5bfe4b923a9739d"}, - {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f0f17814c505f07806e22b28856c59ac80cee7dd0fbb152aed273e116378f519"}, - {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d816f44a51ba5175394bc6c7879ca0bd2be560b2c9e9f3411ef3a4cbe644c2e9"}, - {file = "pydantic_core-2.18.1-cp311-none-win32.whl", hash = "sha256:09f03dfc0ef8c22622eaa8608caa4a1e189cfb83ce847045eca34f690895eccb"}, - {file = "pydantic_core-2.18.1-cp311-none-win_amd64.whl", hash = "sha256:27f1009dc292f3b7ca77feb3571c537276b9aad5dd4efb471ac88a8bd09024e9"}, - {file = "pydantic_core-2.18.1-cp311-none-win_arm64.whl", hash = "sha256:48dd883db92e92519201f2b01cafa881e5f7125666141a49ffba8b9facc072b0"}, - {file = "pydantic_core-2.18.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:b6b0e4912030c6f28bcb72b9ebe4989d6dc2eebcd2a9cdc35fefc38052dd4fe8"}, - {file = "pydantic_core-2.18.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f3202a429fe825b699c57892d4371c74cc3456d8d71b7f35d6028c96dfecad31"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3982b0a32d0a88b3907e4b0dc36809fda477f0757c59a505d4e9b455f384b8b"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25595ac311f20e5324d1941909b0d12933f1fd2171075fcff763e90f43e92a0d"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:14fe73881cf8e4cbdaded8ca0aa671635b597e42447fec7060d0868b52d074e6"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca976884ce34070799e4dfc6fbd68cb1d181db1eefe4a3a94798ddfb34b8867f"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:684d840d2c9ec5de9cb397fcb3f36d5ebb6fa0d94734f9886032dd796c1ead06"}, - {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:54764c083bbe0264f0f746cefcded6cb08fbbaaf1ad1d78fb8a4c30cff999a90"}, - {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:201713f2f462e5c015b343e86e68bd8a530a4f76609b33d8f0ec65d2b921712a"}, - {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fd1a9edb9dd9d79fbeac1ea1f9a8dd527a6113b18d2e9bcc0d541d308dae639b"}, - {file = "pydantic_core-2.18.1-cp312-none-win32.whl", hash = "sha256:d5e6b7155b8197b329dc787356cfd2684c9d6a6b1a197f6bbf45f5555a98d411"}, - {file = "pydantic_core-2.18.1-cp312-none-win_amd64.whl", hash = "sha256:9376d83d686ec62e8b19c0ac3bf8d28d8a5981d0df290196fb6ef24d8a26f0d6"}, - {file = "pydantic_core-2.18.1-cp312-none-win_arm64.whl", hash = "sha256:c562b49c96906b4029b5685075fe1ebd3b5cc2601dfa0b9e16c2c09d6cbce048"}, - {file = "pydantic_core-2.18.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:3e352f0191d99fe617371096845070dee295444979efb8f27ad941227de6ad09"}, - {file = "pydantic_core-2.18.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0295d52b012cbe0d3059b1dba99159c3be55e632aae1999ab74ae2bd86a33d7"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56823a92075780582d1ffd4489a2e61d56fd3ebb4b40b713d63f96dd92d28144"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd3f79e17b56741b5177bcc36307750d50ea0698df6aa82f69c7db32d968c1c2"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38a5024de321d672a132b1834a66eeb7931959c59964b777e8f32dbe9523f6b1"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ce426ee691319d4767748c8e0895cfc56593d725594e415f274059bcf3cb76"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2adaeea59849ec0939af5c5d476935f2bab4b7f0335b0110f0f069a41024278e"}, - {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9b6431559676a1079eac0f52d6d0721fb8e3c5ba43c37bc537c8c83724031feb"}, - {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:85233abb44bc18d16e72dc05bf13848a36f363f83757541f1a97db2f8d58cfd9"}, - {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:641a018af4fe48be57a2b3d7a1f0f5dbca07c1d00951d3d7463f0ac9dac66622"}, - {file = "pydantic_core-2.18.1-cp38-none-win32.whl", hash = "sha256:63d7523cd95d2fde0d28dc42968ac731b5bb1e516cc56b93a50ab293f4daeaad"}, - {file = "pydantic_core-2.18.1-cp38-none-win_amd64.whl", hash = "sha256:907a4d7720abfcb1c81619863efd47c8a85d26a257a2dbebdb87c3b847df0278"}, - {file = "pydantic_core-2.18.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:aad17e462f42ddbef5984d70c40bfc4146c322a2da79715932cd8976317054de"}, - {file = "pydantic_core-2.18.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:94b9769ba435b598b547c762184bcfc4783d0d4c7771b04a3b45775c3589ca44"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80e0e57cc704a52fb1b48f16d5b2c8818da087dbee6f98d9bf19546930dc64b5"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:76b86e24039c35280ceee6dce7e62945eb93a5175d43689ba98360ab31eebc4a"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12a05db5013ec0ca4a32cc6433f53faa2a014ec364031408540ba858c2172bb0"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:250ae39445cb5475e483a36b1061af1bc233de3e9ad0f4f76a71b66231b07f88"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a32204489259786a923e02990249c65b0f17235073149d0033efcebe80095570"}, - {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6395a4435fa26519fd96fdccb77e9d00ddae9dd6c742309bd0b5610609ad7fb2"}, - {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2533ad2883f001efa72f3d0e733fb846710c3af6dcdd544fe5bf14fa5fe2d7db"}, - {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b560b72ed4816aee52783c66854d96157fd8175631f01ef58e894cc57c84f0f6"}, - {file = "pydantic_core-2.18.1-cp39-none-win32.whl", hash = "sha256:582cf2cead97c9e382a7f4d3b744cf0ef1a6e815e44d3aa81af3ad98762f5a9b"}, - {file = "pydantic_core-2.18.1-cp39-none-win_amd64.whl", hash = "sha256:ca71d501629d1fa50ea7fa3b08ba884fe10cefc559f5c6c8dfe9036c16e8ae89"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e178e5b66a06ec5bf51668ec0d4ac8cfb2bdcb553b2c207d58148340efd00143"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:72722ce529a76a4637a60be18bd789d8fb871e84472490ed7ddff62d5fed620d"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fe0c1ce5b129455e43f941f7a46f61f3d3861e571f2905d55cdbb8b5c6f5e2c"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4284c621f06a72ce2cb55f74ea3150113d926a6eb78ab38340c08f770eb9b4d"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a0c3e718f4e064efde68092d9d974e39572c14e56726ecfaeebbe6544521f47"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2027493cc44c23b598cfaf200936110433d9caa84e2c6cf487a83999638a96ac"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:76909849d1a6bffa5a07742294f3fa1d357dc917cb1fe7b470afbc3a7579d539"}, - {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ee7ccc7fb7e921d767f853b47814c3048c7de536663e82fbc37f5eb0d532224b"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ee2794111c188548a4547eccc73a6a8527fe2af6cf25e1a4ebda2fd01cdd2e60"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:a139fe9f298dc097349fb4f28c8b81cc7a202dbfba66af0e14be5cfca4ef7ce5"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d074b07a10c391fc5bbdcb37b2f16f20fcd9e51e10d01652ab298c0d07908ee2"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c69567ddbac186e8c0aadc1f324a60a564cfe25e43ef2ce81bcc4b8c3abffbae"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:baf1c7b78cddb5af00971ad5294a4583188bda1495b13760d9f03c9483bb6203"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2684a94fdfd1b146ff10689c6e4e815f6a01141781c493b97342cdc5b06f4d5d"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:73c1bc8a86a5c9e8721a088df234265317692d0b5cd9e86e975ce3bc3db62a59"}, - {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e60defc3c15defb70bb38dd605ff7e0fae5f6c9c7cbfe0ad7868582cb7e844a6"}, - {file = "pydantic_core-2.18.1.tar.gz", hash = "sha256:de9d3e8717560eb05e28739d1b35e4eac2e458553a52a301e51352a7ffc86a35"}, + {file = "pydantic_core-2.27.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2d367ca20b2f14095a8f4fa1210f5a7b78b8a20009ecced6b12818f455b1e9fa"}, + {file = "pydantic_core-2.27.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:491a2b73db93fab69731eaee494f320faa4e093dbed776be1a829c2eb222c34c"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7969e133a6f183be60e9f6f56bfae753585680f3b7307a8e555a948d443cc05a"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3de9961f2a346257caf0aa508a4da705467f53778e9ef6fe744c038119737ef5"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e2bb4d3e5873c37bb3dd58714d4cd0b0e6238cebc4177ac8fe878f8b3aa8e74c"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:280d219beebb0752699480fe8f1dc61ab6615c2046d76b7ab7ee38858de0a4e7"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47956ae78b6422cbd46f772f1746799cbb862de838fd8d1fbd34a82e05b0983a"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:14d4a5c49d2f009d62a2a7140d3064f686d17a5d1a268bc641954ba181880236"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:337b443af21d488716f8d0b6164de833e788aa6bd7e3a39c005febc1284f4962"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:03d0f86ea3184a12f41a2d23f7ccb79cdb5a18e06993f8a45baa8dfec746f0e9"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7041c36f5680c6e0f08d922aed302e98b3745d97fe1589db0a3eebf6624523af"}, + {file = "pydantic_core-2.27.2-cp310-cp310-win32.whl", hash = "sha256:50a68f3e3819077be2c98110c1f9dcb3817e93f267ba80a2c05bb4f8799e2ff4"}, + {file = "pydantic_core-2.27.2-cp310-cp310-win_amd64.whl", hash = "sha256:e0fd26b16394ead34a424eecf8a31a1f5137094cabe84a1bcb10fa6ba39d3d31"}, + {file = "pydantic_core-2.27.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:8e10c99ef58cfdf2a66fc15d66b16c4a04f62bca39db589ae8cba08bc55331bc"}, + {file = "pydantic_core-2.27.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:26f32e0adf166a84d0cb63be85c562ca8a6fa8de28e5f0d92250c6b7e9e2aff7"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c19d1ea0673cd13cc2f872f6c9ab42acc4e4f492a7ca9d3795ce2b112dd7e15"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5e68c4446fe0810e959cdff46ab0a41ce2f2c86d227d96dc3847af0ba7def306"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d9640b0059ff4f14d1f37321b94061c6db164fbe49b334b31643e0528d100d99"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:40d02e7d45c9f8af700f3452f329ead92da4c5f4317ca9b896de7ce7199ea459"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c1fd185014191700554795c99b347d64f2bb637966c4cfc16998a0ca700d048"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d81d2068e1c1228a565af076598f9e7451712700b673de8f502f0334f281387d"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1a4207639fb02ec2dbb76227d7c751a20b1a6b4bc52850568e52260cae64ca3b"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:3de3ce3c9ddc8bbd88f6e0e304dea0e66d843ec9de1b0042b0911c1663ffd474"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:30c5f68ded0c36466acede341551106821043e9afaad516adfb6e8fa80a4e6a6"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win32.whl", hash = "sha256:c70c26d2c99f78b125a3459f8afe1aed4d9687c24fd677c6a4436bc042e50d6c"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win_amd64.whl", hash = "sha256:08e125dbdc505fa69ca7d9c499639ab6407cfa909214d500897d02afb816e7cc"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win_arm64.whl", hash = "sha256:26f0d68d4b235a2bae0c3fc585c585b4ecc51382db0e3ba402a22cbc440915e4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9e0c8cfefa0ef83b4da9588448b6d8d2a2bf1a53c3f1ae5fca39eb3061e2f0b0"}, + {file = "pydantic_core-2.27.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:83097677b8e3bd7eaa6775720ec8e0405f1575015a463285a92bfdfe254529ef"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:172fce187655fece0c90d90a678424b013f8fbb0ca8b036ac266749c09438cb7"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:519f29f5213271eeeeb3093f662ba2fd512b91c5f188f3bb7b27bc5973816934"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:05e3a55d124407fffba0dd6b0c0cd056d10e983ceb4e5dbd10dda135c31071d6"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c3ed807c7b91de05e63930188f19e921d1fe90de6b4f5cd43ee7fcc3525cb8c"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fb4aadc0b9a0c063206846d603b92030eb6f03069151a625667f982887153e2"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:28ccb213807e037460326424ceb8b5245acb88f32f3d2777427476e1b32c48c4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:de3cd1899e2c279b140adde9357c4495ed9d47131b4a4eaff9052f23398076b3"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:220f892729375e2d736b97d0e51466252ad84c51857d4d15f5e9692f9ef12be4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a0fcd29cd6b4e74fe8ddd2c90330fd8edf2e30cb52acda47f06dd615ae72da57"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win32.whl", hash = "sha256:1e2cb691ed9834cd6a8be61228471d0a503731abfb42f82458ff27be7b2186fc"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win_amd64.whl", hash = "sha256:cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win_arm64.whl", hash = "sha256:3911ac9284cd8a1792d3cb26a2da18f3ca26c6908cc434a18f730dc0db7bfa3b"}, + {file = "pydantic_core-2.27.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7d14bd329640e63852364c306f4d23eb744e0f8193148d4044dd3dacdaacbd8b"}, + {file = "pydantic_core-2.27.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82f91663004eb8ed30ff478d77c4d1179b3563df6cdb15c0817cd1cdaf34d154"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71b24c7d61131bb83df10cc7e687433609963a944ccf45190cfc21e0887b08c9"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fa8e459d4954f608fa26116118bb67f56b93b209c39b008277ace29937453dc9"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8918cbebc8da707ba805b7fd0b382816858728ae7fe19a942080c24e5b7cd1"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eda3f5c2a021bbc5d976107bb302e0131351c2ba54343f8a496dc8783d3d3a6a"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd8086fa684c4775c27f03f062cbb9eaa6e17f064307e86b21b9e0abc9c0f02e"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8d9b3388db186ba0c099a6d20f0604a44eabdeef1777ddd94786cdae158729e4"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7a66efda2387de898c8f38c0cf7f14fca0b51a8ef0b24bfea5849f1b3c95af27"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:18a101c168e4e092ab40dbc2503bdc0f62010e95d292b27827871dc85450d7ee"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ba5dd002f88b78a4215ed2f8ddbdf85e8513382820ba15ad5ad8955ce0ca19a1"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win32.whl", hash = "sha256:1ebaf1d0481914d004a573394f4be3a7616334be70261007e47c2a6fe7e50130"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win_amd64.whl", hash = "sha256:953101387ecf2f5652883208769a79e48db18c6df442568a0b5ccd8c2723abee"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win_arm64.whl", hash = "sha256:ac4dbfd1691affb8f48c2c13241a2e3b60ff23247cbcf981759c768b6633cf8b"}, + {file = "pydantic_core-2.27.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d3e8d504bdd3f10835468f29008d72fc8359d95c9c415ce6e767203db6127506"}, + {file = "pydantic_core-2.27.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:521eb9b7f036c9b6187f0b47318ab0d7ca14bd87f776240b90b21c1f4f149320"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85210c4d99a0114f5a9481b44560d7d1e35e32cc5634c656bc48e590b669b145"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d716e2e30c6f140d7560ef1538953a5cd1a87264c737643d481f2779fc247fe1"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f66d89ba397d92f840f8654756196d93804278457b5fbede59598a1f9f90b228"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:669e193c1c576a58f132e3158f9dfa9662969edb1a250c54d8fa52590045f046"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdbe7629b996647b99c01b37f11170a57ae675375b14b8c13b8518b8320ced5"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d262606bf386a5ba0b0af3b97f37c83d7011439e3dc1a9298f21efb292e42f1a"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cabb9bcb7e0d97f74df8646f34fc76fbf793b7f6dc2438517d7a9e50eee4f14d"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_armv7l.whl", hash = "sha256:d2d63f1215638d28221f664596b1ccb3944f6e25dd18cd3b86b0a4c408d5ebb9"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bca101c00bff0adb45a833f8451b9105d9df18accb8743b08107d7ada14bd7da"}, + {file = "pydantic_core-2.27.2-cp38-cp38-win32.whl", hash = "sha256:f6f8e111843bbb0dee4cb6594cdc73e79b3329b526037ec242a3e49012495b3b"}, + {file = "pydantic_core-2.27.2-cp38-cp38-win_amd64.whl", hash = "sha256:fd1aea04935a508f62e0d0ef1f5ae968774a32afc306fb8545e06f5ff5cdf3ad"}, + {file = "pydantic_core-2.27.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c10eb4f1659290b523af58fa7cffb452a61ad6ae5613404519aee4bfbf1df993"}, + {file = "pydantic_core-2.27.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ef592d4bad47296fb11f96cd7dc898b92e795032b4894dfb4076cfccd43a9308"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c61709a844acc6bf0b7dce7daae75195a10aac96a596ea1b776996414791ede4"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c5f762659e47fdb7b16956c71598292f60a03aa92f8b6351504359dbdba6cf"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c9775e339e42e79ec99c441d9730fccf07414af63eac2f0e48e08fd38a64d76"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57762139821c31847cfb2df63c12f725788bd9f04bc2fb392790959b8f70f118"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d1e85068e818c73e048fe28cfc769040bb1f475524f4745a5dc621f75ac7630"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:097830ed52fd9e427942ff3b9bc17fab52913b2f50f2880dc4a5611446606a54"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:044a50963a614ecfae59bb1eaf7ea7efc4bc62f49ed594e18fa1e5d953c40e9f"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:4e0b4220ba5b40d727c7f879eac379b822eee5d8fff418e9d3381ee45b3b0362"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e4f4bb20d75e9325cc9696c6802657b58bc1dbbe3022f32cc2b2b632c3fbb96"}, + {file = "pydantic_core-2.27.2-cp39-cp39-win32.whl", hash = "sha256:cca63613e90d001b9f2f9a9ceb276c308bfa2a43fafb75c8031c4f66039e8c6e"}, + {file = "pydantic_core-2.27.2-cp39-cp39-win_amd64.whl", hash = "sha256:77d1bca19b0f7021b3a982e6f903dcd5b2b06076def36a652e3907f596e29f67"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2bf14caea37e91198329b828eae1618c068dfb8ef17bb33287a7ad4b61ac314e"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:b0cb791f5b45307caae8810c2023a184c74605ec3bcbb67d13846c28ff731ff8"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:688d3fd9fcb71f41c4c015c023d12a79d1c4c0732ec9eb35d96e3388a120dcf3"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d591580c34f4d731592f0e9fe40f9cc1b430d297eecc70b962e93c5c668f15f"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:82f986faf4e644ffc189a7f1aafc86e46ef70372bb153e7001e8afccc6e54133"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:bec317a27290e2537f922639cafd54990551725fc844249e64c523301d0822fc"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:0296abcb83a797db256b773f45773da397da75a08f5fcaef41f2044adec05f50"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0d75070718e369e452075a6017fbf187f788e17ed67a3abd47fa934d001863d9"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:7e17b560be3c98a8e3aa66ce828bdebb9e9ac6ad5466fba92eb74c4c95cb1151"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c33939a82924da9ed65dab5a65d427205a73181d8098e79b6b426bdf8ad4e656"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:00bad2484fa6bda1e216e7345a798bd37c68fb2d97558edd584942aa41b7d278"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817e2b40aba42bac6f457498dacabc568c3b7a986fc9ba7c8d9d260b71485fb"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:251136cdad0cb722e93732cb45ca5299fb56e1344a833640bf93b2803f8d1bfd"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d2088237af596f0a524d3afc39ab3b036e8adb054ee57cbb1dcf8e09da5b29cc"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d4041c0b966a84b4ae7a09832eb691a35aec90910cd2dbe7a208de59be77965b"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:8083d4e875ebe0b864ffef72a4304827015cff328a1be6e22cc850753bfb122b"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f141ee28a0ad2123b6611b6ceff018039df17f32ada8b534e6aa039545a3efb2"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7d0c8399fcc1848491f00e0314bd59fb34a9c008761bcb422a057670c3f65e35"}, + {file = "pydantic_core-2.27.2.tar.gz", hash = "sha256:eb026e5a4c1fee05726072337ff51d1efb6f59090b7da90d30ea58625b1ffb39"}, ] [package.dependencies] @@ -1832,47 +2024,46 @@ files = [ [[package]] name = "pygments" -version = "2.17.2" +version = "2.18.0" description = "Pygments is a syntax highlighting package written in Python." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, - {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, ] [package.extras] -plugins = ["importlib-metadata"] windows-terminal = ["colorama (>=0.4.6)"] [[package]] name = "pyproject-api" -version = "1.6.1" +version = "1.8.0" description = "API to interact with the python pyproject.toml based projects" optional = false python-versions = ">=3.8" files = [ - {file = "pyproject_api-1.6.1-py3-none-any.whl", hash = "sha256:4c0116d60476b0786c88692cf4e325a9814965e2469c5998b830bba16b183675"}, - {file = "pyproject_api-1.6.1.tar.gz", hash = "sha256:1817dc018adc0d1ff9ca1ed8c60e1623d5aaca40814b953af14a9cf9a5cae538"}, + {file = "pyproject_api-1.8.0-py3-none-any.whl", hash = "sha256:3d7d347a047afe796fd5d1885b1e391ba29be7169bd2f102fcd378f04273d228"}, + {file = "pyproject_api-1.8.0.tar.gz", hash = "sha256:77b8049f2feb5d33eefcc21b57f1e279636277a8ac8ad6b5871037b243778496"}, ] [package.dependencies] -packaging = ">=23.1" +packaging = ">=24.1" tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} [package.extras] -docs = ["furo (>=2023.8.19)", "sphinx (<7.2)", "sphinx-autodoc-typehints (>=1.24)"] -testing = ["covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "setuptools (>=68.1.2)", "wheel (>=0.41.2)"] +docs = ["furo (>=2024.8.6)", "sphinx-autodoc-typehints (>=2.4.1)"] +testing = ["covdefaults (>=2.3)", "pytest (>=8.3.3)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "setuptools (>=75.1)"] [[package]] name = "pytest" -version = "8.1.1" +version = "8.3.4" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.8" files = [ - {file = "pytest-8.1.1-py3-none-any.whl", hash = "sha256:2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"}, - {file = "pytest-8.1.1.tar.gz", hash = "sha256:ac978141a75948948817d360297b7aae0fcb9d6ff6bc9ec6d514b85d5a65c044"}, + {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"}, + {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"}, ] [package.dependencies] @@ -1880,11 +2071,11 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=1.4,<2.0" +pluggy = ">=1.5,<2" tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "python-dateutil" @@ -1902,263 +2093,266 @@ six = ">=1.5" [[package]] name = "python-json-logger" -version = "2.0.7" -description = "A python library adding a json log formatter" +version = "3.2.1" +description = "JSON Log Formatter for the Python Logging Package" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"}, - {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"}, + {file = "python_json_logger-3.2.1-py3-none-any.whl", hash = "sha256:cdc17047eb5374bd311e748b42f99d71223f3b0e186f4206cc5d52aefe85b090"}, + {file = "python_json_logger-3.2.1.tar.gz", hash = "sha256:8eb0554ea17cb75b05d2848bc14fb02fbdbd9d6972120781b974380bfa162008"}, +] + +[package.dependencies] +typing_extensions = {version = "*", markers = "python_version < \"3.10\""} + +[package.extras] +dev = ["backports.zoneinfo", "black", "build", "freezegun", "mdx_truly_sane_lists", "mike", "mkdocs", "mkdocs-awesome-pages-plugin", "mkdocs-gen-files", "mkdocs-literate-nav", "mkdocs-material (>=8.5)", "mkdocstrings[python]", "msgspec", "msgspec-python313-pre", "mypy", "orjson", "pylint", "pytest", "tzdata", "validate-pyproject[all]"] + +[[package]] +name = "pytz" +version = "2024.2" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2024.2-py2.py3-none-any.whl", hash = "sha256:31c7c1817eb7fae7ca4b8c7ee50c72f93aa2dd863de768e1ef4245d426aa0725"}, + {file = "pytz-2024.2.tar.gz", hash = "sha256:2aa355083c50a0f93fa581709deac0c9ad65cca8a9e9beac660adcbd493c798a"}, ] [[package]] name = "pywin32" -version = "306" +version = "308" description = "Python for Window Extensions" optional = false python-versions = "*" files = [ - {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"}, - {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"}, - {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"}, - {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"}, - {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"}, - {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"}, - {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"}, - {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"}, - {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"}, - {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"}, - {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"}, - {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"}, - {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"}, - {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"}, + {file = "pywin32-308-cp310-cp310-win32.whl", hash = "sha256:796ff4426437896550d2981b9c2ac0ffd75238ad9ea2d3bfa67a1abd546d262e"}, + {file = "pywin32-308-cp310-cp310-win_amd64.whl", hash = "sha256:4fc888c59b3c0bef905ce7eb7e2106a07712015ea1c8234b703a088d46110e8e"}, + {file = "pywin32-308-cp310-cp310-win_arm64.whl", hash = "sha256:a5ab5381813b40f264fa3495b98af850098f814a25a63589a8e9eb12560f450c"}, + {file = "pywin32-308-cp311-cp311-win32.whl", hash = "sha256:5d8c8015b24a7d6855b1550d8e660d8daa09983c80e5daf89a273e5c6fb5095a"}, + {file = "pywin32-308-cp311-cp311-win_amd64.whl", hash = "sha256:575621b90f0dc2695fec346b2d6302faebd4f0f45c05ea29404cefe35d89442b"}, + {file = "pywin32-308-cp311-cp311-win_arm64.whl", hash = "sha256:100a5442b7332070983c4cd03f2e906a5648a5104b8a7f50175f7906efd16bb6"}, + {file = "pywin32-308-cp312-cp312-win32.whl", hash = "sha256:587f3e19696f4bf96fde9d8a57cec74a57021ad5f204c9e627e15c33ff568897"}, + {file = "pywin32-308-cp312-cp312-win_amd64.whl", hash = "sha256:00b3e11ef09ede56c6a43c71f2d31857cf7c54b0ab6e78ac659497abd2834f47"}, + {file = "pywin32-308-cp312-cp312-win_arm64.whl", hash = "sha256:9b4de86c8d909aed15b7011182c8cab38c8850de36e6afb1f0db22b8959e3091"}, + {file = "pywin32-308-cp313-cp313-win32.whl", hash = "sha256:1c44539a37a5b7b21d02ab34e6a4d314e0788f1690d65b48e9b0b89f31abbbed"}, + {file = "pywin32-308-cp313-cp313-win_amd64.whl", hash = "sha256:fd380990e792eaf6827fcb7e187b2b4b1cede0585e3d0c9e84201ec27b9905e4"}, + {file = "pywin32-308-cp313-cp313-win_arm64.whl", hash = "sha256:ef313c46d4c18dfb82a2431e3051ac8f112ccee1a34f29c263c583c568db63cd"}, + {file = "pywin32-308-cp37-cp37m-win32.whl", hash = "sha256:1f696ab352a2ddd63bd07430080dd598e6369152ea13a25ebcdd2f503a38f1ff"}, + {file = "pywin32-308-cp37-cp37m-win_amd64.whl", hash = "sha256:13dcb914ed4347019fbec6697a01a0aec61019c1046c2b905410d197856326a6"}, + {file = "pywin32-308-cp38-cp38-win32.whl", hash = "sha256:5794e764ebcabf4ff08c555b31bd348c9025929371763b2183172ff4708152f0"}, + {file = "pywin32-308-cp38-cp38-win_amd64.whl", hash = "sha256:3b92622e29d651c6b783e368ba7d6722b1634b8e70bd376fd7610fe1992e19de"}, + {file = "pywin32-308-cp39-cp39-win32.whl", hash = "sha256:7873ca4dc60ab3287919881a7d4f88baee4a6e639aa6962de25a98ba6b193341"}, + {file = "pywin32-308-cp39-cp39-win_amd64.whl", hash = "sha256:71b3322d949b4cc20776436a9c9ba0eeedcbc9c650daa536df63f0ff111bb920"}, ] [[package]] name = "pywinpty" -version = "2.0.13" +version = "2.0.14" description = "Pseudo terminal support for Windows from Python." optional = false python-versions = ">=3.8" files = [ - {file = "pywinpty-2.0.13-cp310-none-win_amd64.whl", hash = "sha256:697bff211fb5a6508fee2dc6ff174ce03f34a9a233df9d8b5fe9c8ce4d5eaf56"}, - {file = "pywinpty-2.0.13-cp311-none-win_amd64.whl", hash = "sha256:b96fb14698db1284db84ca38c79f15b4cfdc3172065b5137383910567591fa99"}, - {file = "pywinpty-2.0.13-cp312-none-win_amd64.whl", hash = "sha256:2fd876b82ca750bb1333236ce98488c1be96b08f4f7647cfdf4129dfad83c2d4"}, - {file = "pywinpty-2.0.13-cp38-none-win_amd64.whl", hash = "sha256:61d420c2116c0212808d31625611b51caf621fe67f8a6377e2e8b617ea1c1f7d"}, - {file = "pywinpty-2.0.13-cp39-none-win_amd64.whl", hash = "sha256:71cb613a9ee24174730ac7ae439fd179ca34ccb8c5349e8d7b72ab5dea2c6f4b"}, - {file = "pywinpty-2.0.13.tar.gz", hash = "sha256:c34e32351a3313ddd0d7da23d27f835c860d32fe4ac814d372a3ea9594f41dde"}, + {file = "pywinpty-2.0.14-cp310-none-win_amd64.whl", hash = "sha256:0b149c2918c7974f575ba79f5a4aad58bd859a52fa9eb1296cc22aa412aa411f"}, + {file = "pywinpty-2.0.14-cp311-none-win_amd64.whl", hash = "sha256:cf2a43ac7065b3e0dc8510f8c1f13a75fb8fde805efa3b8cff7599a1ef497bc7"}, + {file = "pywinpty-2.0.14-cp312-none-win_amd64.whl", hash = "sha256:55dad362ef3e9408ade68fd173e4f9032b3ce08f68cfe7eacb2c263ea1179737"}, + {file = "pywinpty-2.0.14-cp313-none-win_amd64.whl", hash = "sha256:074fb988a56ec79ca90ed03a896d40707131897cefb8f76f926e3834227f2819"}, + {file = "pywinpty-2.0.14-cp39-none-win_amd64.whl", hash = "sha256:5725fd56f73c0531ec218663bd8c8ff5acc43c78962fab28564871b5fce053fd"}, + {file = "pywinpty-2.0.14.tar.gz", hash = "sha256:18bd9529e4a5daf2d9719aa17788ba6013e594ae94c5a0c27e83df3278b0660e"}, ] [[package]] name = "pyyaml" -version = "6.0.1" +version = "6.0.2" description = "YAML parser and emitter for Python" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, - {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, - {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, - {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, - {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, - {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, - {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, - {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, - {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, - {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, - {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, - {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, - {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, - {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, - {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, - {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, - {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, - {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, - {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, - {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, - {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, + {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, + {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, + {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, + {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, + {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, + {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, + {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, + {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, + {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, + {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, + {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, + {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, + {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, + {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, + {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, ] [[package]] name = "pyzmq" -version = "26.0.2" +version = "26.2.0" description = "Python bindings for 0MQ" optional = false python-versions = ">=3.7" files = [ - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:1a60a03b01e8c9c58932ec0cca15b1712d911c2800eb82d4281bc1ae5b6dad50"}, - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:949067079e14ea1973bd740255e0840118c163d4bce8837f539d749f145cf5c3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37e7edfa6cf96d036a403775c96afa25058d1bb940a79786a9a2fc94a783abe3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:903cc7a84a7d4326b43755c368780800e035aa3d711deae84a533fdffa8755b0"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6cb2e41af165e5f327d06fbdd79a42a4e930267fade4e9f92d17f3ccce03f3a7"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:55353b8189adcfc4c125fc4ce59d477744118e9c0ec379dd0999c5fa120ac4f5"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f961423ff6236a752ced80057a20e623044df95924ed1009f844cde8b3a595f9"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ba77fe84fe4f5f3dc0ef681a6d366685c8ffe1c8439c1d7530997b05ac06a04b"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:52589f0a745ef61b9c75c872cf91f8c1f7c0668eb3dd99d7abd639d8c0fb9ca7"}, - {file = "pyzmq-26.0.2-cp310-cp310-win32.whl", hash = "sha256:b7b6d2a46c7afe2ad03ec8faf9967090c8ceae85c4d8934d17d7cae6f9062b64"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:86531e20de249d9204cc6d8b13d5a30537748c78820215161d8a3b9ea58ca111"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_arm64.whl", hash = "sha256:f26a05029ecd2bd306b941ff8cb80f7620b7901421052bc429d238305b1cbf2f"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:70770e296a9cb03d955540c99360aab861cbb3cba29516abbd106a15dbd91268"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2740fd7161b39e178554ebf21aa5667a1c9ef0cd2cb74298fd4ef017dae7aec4"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5e3706c32dea077faa42b1c92d825b7f86c866f72532d342e0be5e64d14d858"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0fa1416876194927f7723d6b7171b95e1115602967fc6bfccbc0d2d51d8ebae1"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ef9a79a48794099c57dc2df00340b5d47c5caa1792f9ddb8c7a26b1280bd575"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:1c60fcdfa3229aeee4291c5d60faed3a813b18bdadb86299c4bf49e8e51e8605"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e943c39c206b04df2eb5d71305761d7c3ca75fd49452115ea92db1b5b98dbdef"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8da0ed8a598693731c76659880a668f4748b59158f26ed283a93f7f04d47447e"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7bf51970b11d67096bede97cdbad0f4333f7664f4708b9b2acb352bf4faa3140"}, - {file = "pyzmq-26.0.2-cp311-cp311-win32.whl", hash = "sha256:6f8e6bd5d066be605faa9fe5ec10aa1a46ad9f18fc8646f2b9aaefc8fb575742"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:6d03da3a0ae691b361edcb39530075461202f699ce05adbb15055a0e1c9bcaa4"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_arm64.whl", hash = "sha256:f84e33321b68ff00b60e9dbd1a483e31ab6022c577c8de525b8e771bd274ce68"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:44c33ebd1c62a01db7fbc24e18bdda569d6639217d13d5929e986a2b0f69070d"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ac04f904b4fce4afea9cdccbb78e24d468cb610a839d5a698853e14e2a3f9ecf"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2133de5ba9adc5f481884ccb699eac9ce789708292945c05746880f95b241c0"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7753c67c570d7fc80c2dc59b90ca1196f1224e0e2e29a548980c95fe0fe27fc1"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d4e51632e6b12e65e8d9d7612446ecda2eda637a868afa7bce16270194650dd"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:d6c38806f6ecd0acf3104b8d7e76a206bcf56dadd6ce03720d2fa9d9157d5718"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:48f496bbe14686b51cec15406323ae6942851e14022efd7fc0e2ecd092c5982c"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e84a3161149c75bb7a7dc8646384186c34033e286a67fec1ad1bdedea165e7f4"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:dabf796c67aa9f5a4fcc956d47f0d48b5c1ed288d628cf53aa1cf08e88654343"}, - {file = "pyzmq-26.0.2-cp312-cp312-win32.whl", hash = "sha256:3eee4c676af1b109f708d80ef0cf57ecb8aaa5900d1edaf90406aea7e0e20e37"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:26721fec65846b3e4450dad050d67d31b017f97e67f7e0647b5f98aa47f828cf"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_arm64.whl", hash = "sha256:653955c6c233e90de128a1b8e882abc7216f41f44218056bd519969c8c413a15"}, - {file = "pyzmq-26.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:becd8d8fb068fbb5a52096efd83a2d8e54354383f691781f53a4c26aee944542"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:7a15e5465e7083c12517209c9dd24722b25e9b63c49a563922922fc03554eb35"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e8158ac8616941f874841f9fa0f6d2f1466178c2ff91ea08353fdc19de0d40c2"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea2c6a53e28c7066ea7db86fcc0b71d78d01b818bb11d4a4341ec35059885295"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bdbc7dab0b0e9c62c97b732899c4242e3282ba803bad668e03650b59b165466e"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e74b6d5ef57bb65bf1b4a37453d8d86d88550dde3fb0f23b1f1a24e60c70af5b"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ed4c6ee624ecbc77b18aeeb07bf0700d26571ab95b8f723f0d02e056b5bce438"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win32.whl", hash = "sha256:8a98b3cb0484b83c19d8fb5524c8a469cd9f10e743f5904ac285d92678ee761f"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:aa5f95d71b6eca9cec28aa0a2f8310ea53dea313b63db74932879ff860c1fb8d"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:5ff56c76ce77b9805378a7a73032c17cbdb1a5b84faa1df03c5d3e306e5616df"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bab697fc1574fee4b81da955678708567c43c813c84c91074e452bda5346c921"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0c0fed8aa9ba0488ee1cbdaa304deea92d52fab43d373297002cfcc69c0a20c5"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:606b922699fcec472ed814dda4dc3ff7c748254e0b26762a0ba21a726eb1c107"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45f0fd82bad4d199fa993fbf0ac586a7ac5879addbe436a35a389df7e0eb4c91"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:166c5e41045939a52c01e6f374e493d9a6a45dfe677360d3e7026e38c42e8906"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d566e859e8b8d5bca08467c093061774924b3d78a5ba290e82735b2569edc84b"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:264ee0e72b72ca59279dc320deab5ae0fac0d97881aed1875ce4bde2e56ffde0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win32.whl", hash = "sha256:3152bbd3a4744cbdd83dfb210ed701838b8b0c9065cef14671d6d91df12197d0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:bf77601d75ca692c179154b7e5943c286a4aaffec02c491afe05e60493ce95f2"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:c770a7545b3deca2db185b59175e710a820dd4ed43619f4c02e90b0e227c6252"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d47175f0a380bfd051726bc5c0054036ae4a5d8caf922c62c8a172ccd95c1a2a"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9bce298c1ce077837e110367c321285dc4246b531cde1abfc27e4a5bbe2bed4d"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c40b09b7e184d6e3e1be1c8af2cc320c0f9f610d8a5df3dd866e6e6e4e32b235"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d420d856bf728713874cefb911398efe69e1577835851dd297a308a78c14c249"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d792d3cab987058451e55c70c5926e93e2ceb68ca5a2334863bb903eb860c9cb"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:83ec17729cf6d3464dab98a11e98294fcd50e6b17eaabd3d841515c23f6dbd3a"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47c17d5ebfa88ae90f08960c97b49917098665b8cd8be31f2c24e177bcf37a0f"}, - {file = "pyzmq-26.0.2-cp39-cp39-win32.whl", hash = "sha256:d509685d1cd1d018705a811c5f9d5bc237790936ead6d06f6558b77e16cc7235"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:c7cc8cc009e8f6989a6d86c96f87dae5f5fb07d6c96916cdc7719d546152c7db"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_arm64.whl", hash = "sha256:3ada31cb879cd7532f4a85b501f4255c747d4813ab76b35c49ed510ce4865b45"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0a6ceaddc830dd3ca86cb8451cf373d1f05215368e11834538c2902ed5205139"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a967681463aa7a99eb9a62bb18229b653b45c10ff0947b31cc0837a83dfb86f"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6472a73bc115bc40a2076609a90894775abe6faf19a78375675a2f889a613071"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d6aea92bcccfe5e5524d3c70a6f16ffdae548390ddad26f4207d55c55a40593"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e025f6351e49d48a5aa2f5a09293aa769b0ee7369c25bed551647234b7fa0c75"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:40bd7ebe4dbb37d27f0c56e2a844f360239343a99be422085e13e97da13f73f9"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1dd40d586ad6f53764104df6e01810fe1b4e88fd353774629a5e6fe253813f79"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f2aca15e9ad8c8657b5b3d7ae3d1724dc8c1c1059c06b4b674c3aa36305f4930"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:450ec234736732eb0ebeffdb95a352450d4592f12c3e087e2a9183386d22c8bf"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:f43be2bebbd09360a2f23af83b243dc25ffe7b583ea8c722e6df03e03a55f02f"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:867f55e54aff254940bcec5eec068e7c0ac1e6bf360ab91479394a8bf356b0e6"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b4dbc033c5ad46f8c429bf238c25a889b8c1d86bfe23a74e1031a991cb3f0000"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6e8dd2961462e337e21092ec2da0c69d814dcb1b6e892955a37444a425e9cfb8"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35391e72df6c14a09b697c7b94384947c1dd326aca883ff98ff137acdf586c33"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:1c3d3c92fa54eda94ab369ca5b8d35059987c326ba5e55326eb068862f64b1fc"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e7aa61a9cc4f0523373e31fc9255bf4567185a099f85ca3598e64de484da3ab2"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee53a8191271f144cc20b12c19daa9f1546adc84a2f33839e3338039b55c373c"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ac60a980f07fa988983f7bfe6404ef3f1e4303f5288a01713bc1266df6d18783"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88896b1b4817d7b2fe1ec7205c4bbe07bf5d92fb249bf2d226ddea8761996068"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:18dfffe23751edee917764ffa133d5d3fef28dfd1cf3adebef8c90bc854c74c4"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:6926dd14cfe6967d3322640b6d5c3c3039db71716a5e43cca6e3b474e73e0b36"}, - {file = "pyzmq-26.0.2.tar.gz", hash = "sha256:f0f9bb370449158359bb72a3e12c658327670c0ffe6fbcd1af083152b64f9df0"}, + {file = "pyzmq-26.2.0-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:ddf33d97d2f52d89f6e6e7ae66ee35a4d9ca6f36eda89c24591b0c40205a3629"}, + {file = "pyzmq-26.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dacd995031a01d16eec825bf30802fceb2c3791ef24bcce48fa98ce40918c27b"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89289a5ee32ef6c439086184529ae060c741334b8970a6855ec0b6ad3ff28764"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5506f06d7dc6ecf1efacb4a013b1f05071bb24b76350832c96449f4a2d95091c"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ea039387c10202ce304af74def5021e9adc6297067f3441d348d2b633e8166a"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2224fa4a4c2ee872886ed00a571f5e967c85e078e8e8c2530a2fb01b3309b88"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:28ad5233e9c3b52d76196c696e362508959741e1a005fb8fa03b51aea156088f"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:1c17211bc037c7d88e85ed8b7d8f7e52db6dc8eca5590d162717c654550f7282"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b8f86dd868d41bea9a5f873ee13bf5551c94cf6bc51baebc6f85075971fe6eea"}, + {file = "pyzmq-26.2.0-cp310-cp310-win32.whl", hash = "sha256:46a446c212e58456b23af260f3d9fb785054f3e3653dbf7279d8f2b5546b21c2"}, + {file = "pyzmq-26.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:49d34ab71db5a9c292a7644ce74190b1dd5a3475612eefb1f8be1d6961441971"}, + {file = "pyzmq-26.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:bfa832bfa540e5b5c27dcf5de5d82ebc431b82c453a43d141afb1e5d2de025fa"}, + {file = "pyzmq-26.2.0-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:8f7e66c7113c684c2b3f1c83cdd3376103ee0ce4c49ff80a648643e57fb22218"}, + {file = "pyzmq-26.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3a495b30fc91db2db25120df5847d9833af237546fd59170701acd816ccc01c4"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77eb0968da535cba0470a5165468b2cac7772cfb569977cff92e240f57e31bef"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ace4f71f1900a548f48407fc9be59c6ba9d9aaf658c2eea6cf2779e72f9f317"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92a78853d7280bffb93df0a4a6a2498cba10ee793cc8076ef797ef2f74d107cf"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:689c5d781014956a4a6de61d74ba97b23547e431e9e7d64f27d4922ba96e9d6e"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0aca98bc423eb7d153214b2df397c6421ba6373d3397b26c057af3c904452e37"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1f3496d76b89d9429a656293744ceca4d2ac2a10ae59b84c1da9b5165f429ad3"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5c2b3bfd4b9689919db068ac6c9911f3fcb231c39f7dd30e3138be94896d18e6"}, + {file = "pyzmq-26.2.0-cp311-cp311-win32.whl", hash = "sha256:eac5174677da084abf378739dbf4ad245661635f1600edd1221f150b165343f4"}, + {file = "pyzmq-26.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:5a509df7d0a83a4b178d0f937ef14286659225ef4e8812e05580776c70e155d5"}, + {file = "pyzmq-26.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:c0e6091b157d48cbe37bd67233318dbb53e1e6327d6fc3bb284afd585d141003"}, + {file = "pyzmq-26.2.0-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:ded0fc7d90fe93ae0b18059930086c51e640cdd3baebdc783a695c77f123dcd9"}, + {file = "pyzmq-26.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:17bf5a931c7f6618023cdacc7081f3f266aecb68ca692adac015c383a134ca52"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55cf66647e49d4621a7e20c8d13511ef1fe1efbbccf670811864452487007e08"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4661c88db4a9e0f958c8abc2b97472e23061f0bc737f6f6179d7a27024e1faa5"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea7f69de383cb47522c9c208aec6dd17697db7875a4674c4af3f8cfdac0bdeae"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:7f98f6dfa8b8ccaf39163ce872bddacca38f6a67289116c8937a02e30bbe9711"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e3e0210287329272539eea617830a6a28161fbbd8a3271bf4150ae3e58c5d0e6"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6b274e0762c33c7471f1a7471d1a2085b1a35eba5cdc48d2ae319f28b6fc4de3"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:29c6a4635eef69d68a00321e12a7d2559fe2dfccfa8efae3ffb8e91cd0b36a8b"}, + {file = "pyzmq-26.2.0-cp312-cp312-win32.whl", hash = "sha256:989d842dc06dc59feea09e58c74ca3e1678c812a4a8a2a419046d711031f69c7"}, + {file = "pyzmq-26.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:2a50625acdc7801bc6f74698c5c583a491c61d73c6b7ea4dee3901bb99adb27a"}, + {file = "pyzmq-26.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:4d29ab8592b6ad12ebbf92ac2ed2bedcfd1cec192d8e559e2e099f648570e19b"}, + {file = "pyzmq-26.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9dd8cd1aeb00775f527ec60022004d030ddc51d783d056e3e23e74e623e33726"}, + {file = "pyzmq-26.2.0-cp313-cp313-macosx_10_15_universal2.whl", hash = "sha256:28c812d9757fe8acecc910c9ac9dafd2ce968c00f9e619db09e9f8f54c3a68a3"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d80b1dd99c1942f74ed608ddb38b181b87476c6a966a88a950c7dee118fdf50"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c997098cc65e3208eca09303630e84d42718620e83b733d0fd69543a9cab9cb"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ad1bc8d1b7a18497dda9600b12dc193c577beb391beae5cd2349184db40f187"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:bea2acdd8ea4275e1278350ced63da0b166421928276c7c8e3f9729d7402a57b"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:23f4aad749d13698f3f7b64aad34f5fc02d6f20f05999eebc96b89b01262fb18"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:a4f96f0d88accc3dbe4a9025f785ba830f968e21e3e2c6321ccdfc9aef755115"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ced65e5a985398827cc9276b93ef6dfabe0273c23de8c7931339d7e141c2818e"}, + {file = "pyzmq-26.2.0-cp313-cp313-win32.whl", hash = "sha256:31507f7b47cc1ead1f6e86927f8ebb196a0bab043f6345ce070f412a59bf87b5"}, + {file = "pyzmq-26.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:70fc7fcf0410d16ebdda9b26cbd8bf8d803d220a7f3522e060a69a9c87bf7bad"}, + {file = "pyzmq-26.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:c3789bd5768ab5618ebf09cef6ec2b35fed88709b104351748a63045f0ff9797"}, + {file = "pyzmq-26.2.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:034da5fc55d9f8da09015d368f519478a52675e558c989bfcb5cf6d4e16a7d2a"}, + {file = "pyzmq-26.2.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:c92d73464b886931308ccc45b2744e5968cbaade0b1d6aeb40d8ab537765f5bc"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:794a4562dcb374f7dbbfb3f51d28fb40123b5a2abadee7b4091f93054909add5"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aee22939bb6075e7afededabad1a56a905da0b3c4e3e0c45e75810ebe3a52672"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ae90ff9dad33a1cfe947d2c40cb9cb5e600d759ac4f0fd22616ce6540f72797"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:43a47408ac52647dfabbc66a25b05b6a61700b5165807e3fbd40063fcaf46386"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:25bf2374a2a8433633c65ccb9553350d5e17e60c8eb4de4d92cc6bd60f01d306"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_i686.whl", hash = "sha256:007137c9ac9ad5ea21e6ad97d3489af654381324d5d3ba614c323f60dab8fae6"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:470d4a4f6d48fb34e92d768b4e8a5cc3780db0d69107abf1cd7ff734b9766eb0"}, + {file = "pyzmq-26.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3b55a4229ce5da9497dd0452b914556ae58e96a4381bb6f59f1305dfd7e53fc8"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9cb3a6460cdea8fe8194a76de8895707e61ded10ad0be97188cc8463ffa7e3a8"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8ab5cad923cc95c87bffee098a27856c859bd5d0af31bd346035aa816b081fe1"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ed69074a610fad1c2fda66180e7b2edd4d31c53f2d1872bc2d1211563904cd9"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:cccba051221b916a4f5e538997c45d7d136a5646442b1231b916d0164067ea27"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:0eaa83fc4c1e271c24eaf8fb083cbccef8fde77ec8cd45f3c35a9a123e6da097"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9edda2df81daa129b25a39b86cb57dfdfe16f7ec15b42b19bfac503360d27a93"}, + {file = "pyzmq-26.2.0-cp37-cp37m-win32.whl", hash = "sha256:ea0eb6af8a17fa272f7b98d7bebfab7836a0d62738e16ba380f440fceca2d951"}, + {file = "pyzmq-26.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:4ff9dc6bc1664bb9eec25cd17506ef6672d506115095411e237d571e92a58231"}, + {file = "pyzmq-26.2.0-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:2eb7735ee73ca1b0d71e0e67c3739c689067f055c764f73aac4cc8ecf958ee3f"}, + {file = "pyzmq-26.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1a534f43bc738181aa7cbbaf48e3eca62c76453a40a746ab95d4b27b1111a7d2"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:aedd5dd8692635813368e558a05266b995d3d020b23e49581ddd5bbe197a8ab6"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8be4700cd8bb02cc454f630dcdf7cfa99de96788b80c51b60fe2fe1dac480289"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fcc03fa4997c447dce58264e93b5aa2d57714fbe0f06c07b7785ae131512732"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:402b190912935d3db15b03e8f7485812db350d271b284ded2b80d2e5704be780"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8685fa9c25ff00f550c1fec650430c4b71e4e48e8d852f7ddcf2e48308038640"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:76589c020680778f06b7e0b193f4b6dd66d470234a16e1df90329f5e14a171cd"}, + {file = "pyzmq-26.2.0-cp38-cp38-win32.whl", hash = "sha256:8423c1877d72c041f2c263b1ec6e34360448decfb323fa8b94e85883043ef988"}, + {file = "pyzmq-26.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:76589f2cd6b77b5bdea4fca5992dc1c23389d68b18ccc26a53680ba2dc80ff2f"}, + {file = "pyzmq-26.2.0-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:b1d464cb8d72bfc1a3adc53305a63a8e0cac6bc8c5a07e8ca190ab8d3faa43c2"}, + {file = "pyzmq-26.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4da04c48873a6abdd71811c5e163bd656ee1b957971db7f35140a2d573f6949c"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:d049df610ac811dcffdc147153b414147428567fbbc8be43bb8885f04db39d98"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:05590cdbc6b902101d0e65d6a4780af14dc22914cc6ab995d99b85af45362cc9"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c811cfcd6a9bf680236c40c6f617187515269ab2912f3d7e8c0174898e2519db"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6835dd60355593de10350394242b5757fbbd88b25287314316f266e24c61d073"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc6bee759a6bddea5db78d7dcd609397449cb2d2d6587f48f3ca613b19410cfc"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c530e1eecd036ecc83c3407f77bb86feb79916d4a33d11394b8234f3bd35b940"}, + {file = "pyzmq-26.2.0-cp39-cp39-win32.whl", hash = "sha256:367b4f689786fca726ef7a6c5ba606958b145b9340a5e4808132cc65759abd44"}, + {file = "pyzmq-26.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:e6fa2e3e683f34aea77de8112f6483803c96a44fd726d7358b9888ae5bb394ec"}, + {file = "pyzmq-26.2.0-cp39-cp39-win_arm64.whl", hash = "sha256:7445be39143a8aa4faec43b076e06944b8f9d0701b669df4af200531b21e40bb"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:706e794564bec25819d21a41c31d4df2d48e1cc4b061e8d345d7fb4dd3e94072"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b435f2753621cd36e7c1762156815e21c985c72b19135dac43a7f4f31d28dd1"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:160c7e0a5eb178011e72892f99f918c04a131f36056d10d9c1afb223fc952c2d"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c4a71d5d6e7b28a47a394c0471b7e77a0661e2d651e7ae91e0cab0a587859ca"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:90412f2db8c02a3864cbfc67db0e3dcdbda336acf1c469526d3e869394fe001c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2ea4ad4e6a12e454de05f2949d4beddb52460f3de7c8b9d5c46fbb7d7222e02c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fc4f7a173a5609631bb0c42c23d12c49df3966f89f496a51d3eb0ec81f4519d6"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:878206a45202247781472a2d99df12a176fef806ca175799e1c6ad263510d57c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:17c412bad2eb9468e876f556eb4ee910e62d721d2c7a53c7fa31e643d35352e6"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:0d987a3ae5a71c6226b203cfd298720e0086c7fe7c74f35fa8edddfbd6597eed"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:39887ac397ff35b7b775db7201095fc6310a35fdbae85bac4523f7eb3b840e20"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fdb5b3e311d4d4b0eb8b3e8b4d1b0a512713ad7e6a68791d0923d1aec433d919"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:226af7dcb51fdb0109f0016449b357e182ea0ceb6b47dfb5999d569e5db161d5"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0bed0e799e6120b9c32756203fb9dfe8ca2fb8467fed830c34c877e25638c3fc"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:29c7947c594e105cb9e6c466bace8532dc1ca02d498684128b339799f5248277"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:cdeabcff45d1c219636ee2e54d852262e5c2e085d6cb476d938aee8d921356b3"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35cffef589bcdc587d06f9149f8d5e9e8859920a071df5a2671de2213bef592a"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18c8dc3b7468d8b4bdf60ce9d7141897da103c7a4690157b32b60acb45e333e6"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7133d0a1677aec369d67dd78520d3fa96dd7f3dcec99d66c1762870e5ea1a50a"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6a96179a24b14fa6428cbfc08641c779a53f8fcec43644030328f44034c7f1f4"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:4f78c88905461a9203eac9faac157a2a0dbba84a0fd09fd29315db27be40af9f"}, + {file = "pyzmq-26.2.0.tar.gz", hash = "sha256:070672c258581c8e4f640b5159297580a9974b026043bd4ab0470be9ed324f1f"}, ] [package.dependencies] cffi = {version = "*", markers = "implementation_name == \"pypy\""} -[[package]] -name = "qtconsole" -version = "5.5.1" -description = "Jupyter Qt console" -optional = false -python-versions = ">= 3.8" -files = [ - {file = "qtconsole-5.5.1-py3-none-any.whl", hash = "sha256:8c75fa3e9b4ed884880ff7cea90a1b67451219279ec33deaee1d59e3df1a5d2b"}, - {file = "qtconsole-5.5.1.tar.gz", hash = "sha256:a0e806c6951db9490628e4df80caec9669b65149c7ba40f9bf033c025a5b56bc"}, -] - -[package.dependencies] -ipykernel = ">=4.1" -jupyter-client = ">=4.1" -jupyter-core = "*" -packaging = "*" -pygments = "*" -pyzmq = ">=17.1" -qtpy = ">=2.4.0" -traitlets = "<5.2.1 || >5.2.1,<5.2.2 || >5.2.2" - -[package.extras] -doc = ["Sphinx (>=1.3)"] -test = ["flaky", "pytest", "pytest-qt"] - -[[package]] -name = "qtpy" -version = "2.4.1" -description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." -optional = false -python-versions = ">=3.7" -files = [ - {file = "QtPy-2.4.1-py3-none-any.whl", hash = "sha256:1c1d8c4fa2c884ae742b069151b0abe15b3f70491f3972698c683b8e38de839b"}, - {file = "QtPy-2.4.1.tar.gz", hash = "sha256:a5a15ffd519550a1361bdc56ffc07fda56a6af7292f17c7b395d4083af632987"}, -] - -[package.dependencies] -packaging = "*" - -[package.extras] -test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] - [[package]] name = "referencing" -version = "0.34.0" +version = "0.35.1" description = "JSON Referencing + Python" optional = false python-versions = ">=3.8" files = [ - {file = "referencing-0.34.0-py3-none-any.whl", hash = "sha256:d53ae300ceddd3169f1ffa9caf2cb7b769e92657e4fafb23d34b93679116dfd4"}, - {file = "referencing-0.34.0.tar.gz", hash = "sha256:5773bd84ef41799a5a8ca72dc34590c041eb01bf9aa02632b4a973fb0181a844"}, + {file = "referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de"}, + {file = "referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"}, ] [package.dependencies] @@ -2167,13 +2361,13 @@ rpds-py = ">=0.7.0" [[package]] name = "requests" -version = "2.31.0" +version = "2.32.3" description = "Python HTTP for Humans." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, - {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, ] [package.dependencies] @@ -2188,13 +2382,13 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "requests-oauth2client" -version = "1.5.2" +version = "1.6.0" description = "An OAuth2.x client based on `requests`." optional = false python-versions = ">=3.8" files = [ - {file = "requests_oauth2client-1.5.2-py3-none-any.whl", hash = "sha256:85576a28d74e6bb97a7a9a907232c3964f5cbb23a58fecbabc22d0ffa8be35be"}, - {file = "requests_oauth2client-1.5.2.tar.gz", hash = "sha256:ca4b87323959cea8b3896200880a720f34bf4684fe8e8903de98432d97ee0e04"}, + {file = "requests_oauth2client-1.6.0-py3-none-any.whl", hash = "sha256:fa702619409cc93ab6433871d1ccec58140a70d86923fd742983fac47b334881"}, + {file = "requests_oauth2client-1.6.0.tar.gz", hash = "sha256:53f4a82b566d21707ecd7e4b8cdab019e6eb0965f26c4ac0484b9e28ffd221ee"}, ] [package.dependencies] @@ -2231,110 +2425,114 @@ files = [ [[package]] name = "rpds-py" -version = "0.18.0" +version = "0.20.1" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false python-versions = ">=3.8" files = [ - {file = "rpds_py-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5b4e7d8d6c9b2e8ee2d55c90b59c707ca59bc30058269b3db7b1f8df5763557e"}, - {file = "rpds_py-0.18.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c463ed05f9dfb9baebef68048aed8dcdc94411e4bf3d33a39ba97e271624f8f7"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01e36a39af54a30f28b73096dd39b6802eddd04c90dbe161c1b8dbe22353189f"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d62dec4976954a23d7f91f2f4530852b0c7608116c257833922a896101336c51"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd18772815d5f008fa03d2b9a681ae38d5ae9f0e599f7dda233c439fcaa00d40"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:923d39efa3cfb7279a0327e337a7958bff00cc447fd07a25cddb0a1cc9a6d2da"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39514da80f971362f9267c600b6d459bfbbc549cffc2cef8e47474fddc9b45b1"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a34d557a42aa28bd5c48a023c570219ba2593bcbbb8dc1b98d8cf5d529ab1434"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93df1de2f7f7239dc9cc5a4a12408ee1598725036bd2dedadc14d94525192fc3"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:34b18ba135c687f4dac449aa5157d36e2cbb7c03cbea4ddbd88604e076aa836e"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c0b5dcf9193625afd8ecc92312d6ed78781c46ecbf39af9ad4681fc9f464af88"}, - {file = "rpds_py-0.18.0-cp310-none-win32.whl", hash = "sha256:c4325ff0442a12113a6379af66978c3fe562f846763287ef66bdc1d57925d337"}, - {file = "rpds_py-0.18.0-cp310-none-win_amd64.whl", hash = "sha256:7223a2a5fe0d217e60a60cdae28d6949140dde9c3bcc714063c5b463065e3d66"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3a96e0c6a41dcdba3a0a581bbf6c44bb863f27c541547fb4b9711fd8cf0ffad4"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30f43887bbae0d49113cbaab729a112251a940e9b274536613097ab8b4899cf6"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcb25daa9219b4cf3a0ab24b0eb9a5cc8949ed4dc72acb8fa16b7e1681aa3c58"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d68c93e381010662ab873fea609bf6c0f428b6d0bb00f2c6939782e0818d37bf"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b34b7aa8b261c1dbf7720b5d6f01f38243e9b9daf7e6b8bc1fd4657000062f2c"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e6d75ab12b0bbab7215e5d40f1e5b738aa539598db27ef83b2ec46747df90e1"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8612cd233543a3781bc659c731b9d607de65890085098986dfd573fc2befe5"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aec493917dd45e3c69d00a8874e7cbed844efd935595ef78a0f25f14312e33c6"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:661d25cbffaf8cc42e971dd570d87cb29a665f49f4abe1f9e76be9a5182c4688"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1df3659d26f539ac74fb3b0c481cdf9d725386e3552c6fa2974f4d33d78e544b"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a1ce3ba137ed54f83e56fb983a5859a27d43a40188ba798993812fed73c70836"}, - {file = "rpds_py-0.18.0-cp311-none-win32.whl", hash = "sha256:69e64831e22a6b377772e7fb337533c365085b31619005802a79242fee620bc1"}, - {file = "rpds_py-0.18.0-cp311-none-win_amd64.whl", hash = "sha256:998e33ad22dc7ec7e030b3df701c43630b5bc0d8fbc2267653577e3fec279afa"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7f2facbd386dd60cbbf1a794181e6aa0bd429bd78bfdf775436020172e2a23f0"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d9a5be316c15ffb2b3c405c4ff14448c36b4435be062a7f578ccd8b01f0c4d8"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd5bf1af8efe569654bbef5a3e0a56eca45f87cfcffab31dd8dde70da5982475"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5417558f6887e9b6b65b4527232553c139b57ec42c64570569b155262ac0754f"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56a737287efecafc16f6d067c2ea0117abadcd078d58721f967952db329a3e5c"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f03bccbd8586e9dd37219bce4d4e0d3ab492e6b3b533e973fa08a112cb2ffc9"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4457a94da0d5c53dc4b3e4de1158bdab077db23c53232f37a3cb7afdb053a4e3"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0ab39c1ba9023914297dd88ec3b3b3c3f33671baeb6acf82ad7ce883f6e8e157"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d54553c1136b50fd12cc17e5b11ad07374c316df307e4cfd6441bea5fb68496"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0af039631b6de0397ab2ba16eaf2872e9f8fca391b44d3d8cac317860a700a3f"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84ffab12db93b5f6bad84c712c92060a2d321b35c3c9960b43d08d0f639d60d7"}, - {file = "rpds_py-0.18.0-cp312-none-win32.whl", hash = "sha256:685537e07897f173abcf67258bee3c05c374fa6fff89d4c7e42fb391b0605e98"}, - {file = "rpds_py-0.18.0-cp312-none-win_amd64.whl", hash = "sha256:e003b002ec72c8d5a3e3da2989c7d6065b47d9eaa70cd8808b5384fbb970f4ec"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:08f9ad53c3f31dfb4baa00da22f1e862900f45908383c062c27628754af2e88e"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0013fe6b46aa496a6749c77e00a3eb07952832ad6166bd481c74bda0dcb6d58"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e32a92116d4f2a80b629778280103d2a510a5b3f6314ceccd6e38006b5e92dcb"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e541ec6f2ec456934fd279a3120f856cd0aedd209fc3852eca563f81738f6861"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bed88b9a458e354014d662d47e7a5baafd7ff81c780fd91584a10d6ec842cb73"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2644e47de560eb7bd55c20fc59f6daa04682655c58d08185a9b95c1970fa1e07"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e8916ae4c720529e18afa0b879473049e95949bf97042e938530e072fde061d"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:465a3eb5659338cf2a9243e50ad9b2296fa15061736d6e26240e713522b6235c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ea7d4a99f3b38c37eac212dbd6ec42b7a5ec51e2c74b5d3223e43c811609e65f"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:67071a6171e92b6da534b8ae326505f7c18022c6f19072a81dcf40db2638767c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:41ef53e7c58aa4ef281da975f62c258950f54b76ec8e45941e93a3d1d8580594"}, - {file = "rpds_py-0.18.0-cp38-none-win32.whl", hash = "sha256:fdea4952db2793c4ad0bdccd27c1d8fdd1423a92f04598bc39425bcc2b8ee46e"}, - {file = "rpds_py-0.18.0-cp38-none-win_amd64.whl", hash = "sha256:7cd863afe7336c62ec78d7d1349a2f34c007a3cc6c2369d667c65aeec412a5b1"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5307def11a35f5ae4581a0b658b0af8178c65c530e94893345bebf41cc139d33"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:77f195baa60a54ef9d2de16fbbfd3ff8b04edc0c0140a761b56c267ac11aa467"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39f5441553f1c2aed4de4377178ad8ff8f9d733723d6c66d983d75341de265ab"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a00312dea9310d4cb7dbd7787e722d2e86a95c2db92fbd7d0155f97127bcb40"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f2fc11e8fe034ee3c34d316d0ad8808f45bc3b9ce5857ff29d513f3ff2923a1"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:586f8204935b9ec884500498ccc91aa869fc652c40c093bd9e1471fbcc25c022"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ddc2f4dfd396c7bfa18e6ce371cba60e4cf9d2e5cdb71376aa2da264605b60b9"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ddcba87675b6d509139d1b521e0c8250e967e63b5909a7e8f8944d0f90ff36f"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7bd339195d84439cbe5771546fe8a4e8a7a045417d8f9de9a368c434e42a721e"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:d7c36232a90d4755b720fbd76739d8891732b18cf240a9c645d75f00639a9024"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6b0817e34942b2ca527b0e9298373e7cc75f429e8da2055607f4931fded23e20"}, - {file = "rpds_py-0.18.0-cp39-none-win32.whl", hash = "sha256:99f70b740dc04d09e6b2699b675874367885217a2e9f782bdf5395632ac663b7"}, - {file = "rpds_py-0.18.0-cp39-none-win_amd64.whl", hash = "sha256:6ef687afab047554a2d366e112dd187b62d261d49eb79b77e386f94644363294"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad36cfb355e24f1bd37cac88c112cd7730873f20fb0bdaf8ba59eedf8216079f"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:36b3ee798c58ace201289024b52788161e1ea133e4ac93fba7d49da5fec0ef9e"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8a2f084546cc59ea99fda8e070be2fd140c3092dc11524a71aa8f0f3d5a55ca"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e4461d0f003a0aa9be2bdd1b798a041f177189c1a0f7619fe8c95ad08d9a45d7"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8db715ebe3bb7d86d77ac1826f7d67ec11a70dbd2376b7cc214199360517b641"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:793968759cd0d96cac1e367afd70c235867831983f876a53389ad869b043c948"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66e6a3af5a75363d2c9a48b07cb27c4ea542938b1a2e93b15a503cdfa8490795"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ef0befbb5d79cf32d0266f5cff01545602344eda89480e1dd88aca964260b18"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d4acf42190d449d5e89654d5c1ed3a4f17925eec71f05e2a41414689cda02d1"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a5f446dd5055667aabaee78487f2b5ab72e244f9bc0b2ffebfeec79051679984"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9dbbeb27f4e70bfd9eec1be5477517365afe05a9b2c441a0b21929ee61048124"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:22806714311a69fd0af9b35b7be97c18a0fc2826e6827dbb3a8c94eac6cf7eeb"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b34ae4636dfc4e76a438ab826a0d1eed2589ca7d9a1b2d5bb546978ac6485461"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c8370641f1a7f0e0669ddccca22f1da893cef7628396431eb445d46d893e5cd"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8362467a0fdeccd47935f22c256bec5e6abe543bf0d66e3d3d57a8fb5731863"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11a8c85ef4a07a7638180bf04fe189d12757c696eb41f310d2426895356dcf05"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b316144e85316da2723f9d8dc75bada12fa58489a527091fa1d5a612643d1a0e"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf1ea2e34868f6fbf070e1af291c8180480310173de0b0c43fc38a02929fc0e3"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e546e768d08ad55b20b11dbb78a745151acbd938f8f00d0cfbabe8b0199b9880"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4901165d170a5fde6f589acb90a6b33629ad1ec976d4529e769c6f3d885e3e80"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:618a3d6cae6ef8ec88bb76dd80b83cfe415ad4f1d942ca2a903bf6b6ff97a2da"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ed4eb745efbff0a8e9587d22a84be94a5eb7d2d99c02dacf7bd0911713ed14dd"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c81e5f372cd0dc5dc4809553d34f832f60a46034a5f187756d9b90586c2c307"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:43fbac5f22e25bee1d482c97474f930a353542855f05c1161fd804c9dc74a09d"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d7faa6f14017c0b1e69f5e2c357b998731ea75a442ab3841c0dbbbfe902d2c4"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:08231ac30a842bd04daabc4d71fddd7e6d26189406d5a69535638e4dcb88fe76"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:044a3e61a7c2dafacae99d1e722cc2d4c05280790ec5a05031b3876809d89a5c"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f26b5bd1079acdb0c7a5645e350fe54d16b17bfc5e71f371c449383d3342e17"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:482103aed1dfe2f3b71a58eff35ba105289b8d862551ea576bd15479aba01f66"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1374f4129f9bcca53a1bba0bb86bf78325a0374577cf7e9e4cd046b1e6f20e24"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:635dc434ff724b178cb192c70016cc0ad25a275228f749ee0daf0eddbc8183b1"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:bc362ee4e314870a70f4ae88772d72d877246537d9f8cb8f7eacf10884862432"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:4832d7d380477521a8c1644bbab6588dfedea5e30a7d967b5fb75977c45fd77f"}, - {file = "rpds_py-0.18.0.tar.gz", hash = "sha256:42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"}, + {file = "rpds_py-0.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:a649dfd735fff086e8a9d0503a9f0c7d01b7912a333c7ae77e1515c08c146dad"}, + {file = "rpds_py-0.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f16bc1334853e91ddaaa1217045dd7be166170beec337576818461268a3de67f"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14511a539afee6f9ab492b543060c7491c99924314977a55c98bfa2ee29ce78c"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3ccb8ac2d3c71cda472b75af42818981bdacf48d2e21c36331b50b4f16930163"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c142b88039b92e7e0cb2552e8967077e3179b22359e945574f5e2764c3953dcf"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f19169781dddae7478a32301b499b2858bc52fc45a112955e798ee307e294977"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13c56de6518e14b9bf6edde23c4c39dac5b48dcf04160ea7bce8fca8397cdf86"}, + {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:925d176a549f4832c6f69fa6026071294ab5910e82a0fe6c6228fce17b0706bd"}, + {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:78f0b6877bfce7a3d1ff150391354a410c55d3cdce386f862926a4958ad5ab7e"}, + {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:3dd645e2b0dcb0fd05bf58e2e54c13875847687d0b71941ad2e757e5d89d4356"}, + {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:4f676e21db2f8c72ff0936f895271e7a700aa1f8d31b40e4e43442ba94973899"}, + {file = "rpds_py-0.20.1-cp310-none-win32.whl", hash = "sha256:648386ddd1e19b4a6abab69139b002bc49ebf065b596119f8f37c38e9ecee8ff"}, + {file = "rpds_py-0.20.1-cp310-none-win_amd64.whl", hash = "sha256:d9ecb51120de61e4604650666d1f2b68444d46ae18fd492245a08f53ad2b7711"}, + {file = "rpds_py-0.20.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:762703bdd2b30983c1d9e62b4c88664df4a8a4d5ec0e9253b0231171f18f6d75"}, + {file = "rpds_py-0.20.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0b581f47257a9fce535c4567782a8976002d6b8afa2c39ff616edf87cbeff712"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:842c19a6ce894493563c3bd00d81d5100e8e57d70209e84d5491940fdb8b9e3a"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42cbde7789f5c0bcd6816cb29808e36c01b960fb5d29f11e052215aa85497c93"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6c8e9340ce5a52f95fa7d3b552b35c7e8f3874d74a03a8a69279fd5fca5dc751"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ba6f89cac95c0900d932c9efb7f0fb6ca47f6687feec41abcb1bd5e2bd45535"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a916087371afd9648e1962e67403c53f9c49ca47b9680adbeef79da3a7811b0"}, + {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:200a23239781f46149e6a415f1e870c5ef1e712939fe8fa63035cd053ac2638e"}, + {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:58b1d5dd591973d426cbb2da5e27ba0339209832b2f3315928c9790e13f159e8"}, + {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:6b73c67850ca7cae0f6c56f71e356d7e9fa25958d3e18a64927c2d930859b8e4"}, + {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d8761c3c891cc51e90bc9926d6d2f59b27beaf86c74622c8979380a29cc23ac3"}, + {file = "rpds_py-0.20.1-cp311-none-win32.whl", hash = "sha256:cd945871335a639275eee904caef90041568ce3b42f402c6959b460d25ae8732"}, + {file = "rpds_py-0.20.1-cp311-none-win_amd64.whl", hash = "sha256:7e21b7031e17c6b0e445f42ccc77f79a97e2687023c5746bfb7a9e45e0921b84"}, + {file = "rpds_py-0.20.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:36785be22066966a27348444b40389f8444671630063edfb1a2eb04318721e17"}, + {file = "rpds_py-0.20.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:142c0a5124d9bd0e2976089484af5c74f47bd3298f2ed651ef54ea728d2ea42c"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbddc10776ca7ebf2a299c41a4dde8ea0d8e3547bfd731cb87af2e8f5bf8962d"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:15a842bb369e00295392e7ce192de9dcbf136954614124a667f9f9f17d6a216f"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be5ef2f1fc586a7372bfc355986226484e06d1dc4f9402539872c8bb99e34b01"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbcf360c9e3399b056a238523146ea77eeb2a596ce263b8814c900263e46031a"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ecd27a66740ffd621d20b9a2f2b5ee4129a56e27bfb9458a3bcc2e45794c96cb"}, + {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0b937b2a1988f184a3e9e577adaa8aede21ec0b38320d6009e02bd026db04fa"}, + {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6889469bfdc1eddf489729b471303739bf04555bb151fe8875931f8564309afc"}, + {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:19b73643c802f4eaf13d97f7855d0fb527fbc92ab7013c4ad0e13a6ae0ed23bd"}, + {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3c6afcf2338e7f374e8edc765c79fbcb4061d02b15dd5f8f314a4af2bdc7feb5"}, + {file = "rpds_py-0.20.1-cp312-none-win32.whl", hash = "sha256:dc73505153798c6f74854aba69cc75953888cf9866465196889c7cdd351e720c"}, + {file = "rpds_py-0.20.1-cp312-none-win_amd64.whl", hash = "sha256:8bbe951244a838a51289ee53a6bae3a07f26d4e179b96fc7ddd3301caf0518eb"}, + {file = "rpds_py-0.20.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:6ca91093a4a8da4afae7fe6a222c3b53ee4eef433ebfee4d54978a103435159e"}, + {file = "rpds_py-0.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b9c2fe36d1f758b28121bef29ed1dee9b7a2453e997528e7d1ac99b94892527c"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f009c69bc8c53db5dfab72ac760895dc1f2bc1b62ab7408b253c8d1ec52459fc"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6740a3e8d43a32629bb9b009017ea5b9e713b7210ba48ac8d4cb6d99d86c8ee8"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:32b922e13d4c0080d03e7b62991ad7f5007d9cd74e239c4b16bc85ae8b70252d"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe00a9057d100e69b4ae4a094203a708d65b0f345ed546fdef86498bf5390982"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49fe9b04b6fa685bd39237d45fad89ba19e9163a1ccaa16611a812e682913496"}, + {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aa7ac11e294304e615b43f8c441fee5d40094275ed7311f3420d805fde9b07b4"}, + {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6aa97af1558a9bef4025f8f5d8c60d712e0a3b13a2fe875511defc6ee77a1ab7"}, + {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:483b29f6f7ffa6af845107d4efe2e3fa8fb2693de8657bc1849f674296ff6a5a"}, + {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:37fe0f12aebb6a0e3e17bb4cd356b1286d2d18d2e93b2d39fe647138458b4bcb"}, + {file = "rpds_py-0.20.1-cp313-none-win32.whl", hash = "sha256:a624cc00ef2158e04188df5e3016385b9353638139a06fb77057b3498f794782"}, + {file = "rpds_py-0.20.1-cp313-none-win_amd64.whl", hash = "sha256:b71b8666eeea69d6363248822078c075bac6ed135faa9216aa85f295ff009b1e"}, + {file = "rpds_py-0.20.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:5b48e790e0355865197ad0aca8cde3d8ede347831e1959e158369eb3493d2191"}, + {file = "rpds_py-0.20.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3e310838a5801795207c66c73ea903deda321e6146d6f282e85fa7e3e4854804"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2249280b870e6a42c0d972339e9cc22ee98730a99cd7f2f727549af80dd5a963"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e79059d67bea28b53d255c1437b25391653263f0e69cd7dec170d778fdbca95e"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b431c777c9653e569986ecf69ff4a5dba281cded16043d348bf9ba505486f36"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:da584ff96ec95e97925174eb8237e32f626e7a1a97888cdd27ee2f1f24dd0ad8"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02a0629ec053fc013808a85178524e3cb63a61dbc35b22499870194a63578fb9"}, + {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fbf15aff64a163db29a91ed0868af181d6f68ec1a3a7d5afcfe4501252840bad"}, + {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:07924c1b938798797d60c6308fa8ad3b3f0201802f82e4a2c41bb3fafb44cc28"}, + {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4a5a844f68776a7715ecb30843b453f07ac89bad393431efbf7accca3ef599c1"}, + {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:518d2ca43c358929bf08f9079b617f1c2ca6e8848f83c1225c88caeac46e6cbc"}, + {file = "rpds_py-0.20.1-cp38-none-win32.whl", hash = "sha256:3aea7eed3e55119635a74bbeb80b35e776bafccb70d97e8ff838816c124539f1"}, + {file = "rpds_py-0.20.1-cp38-none-win_amd64.whl", hash = "sha256:7dca7081e9a0c3b6490a145593f6fe3173a94197f2cb9891183ef75e9d64c425"}, + {file = "rpds_py-0.20.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b41b6321805c472f66990c2849e152aff7bc359eb92f781e3f606609eac877ad"}, + {file = "rpds_py-0.20.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a90c373ea2975519b58dece25853dbcb9779b05cc46b4819cb1917e3b3215b6"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16d4477bcb9fbbd7b5b0e4a5d9b493e42026c0bf1f06f723a9353f5153e75d30"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:84b8382a90539910b53a6307f7c35697bc7e6ffb25d9c1d4e998a13e842a5e83"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4888e117dd41b9d34194d9e31631af70d3d526efc363085e3089ab1a62c32ed1"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5265505b3d61a0f56618c9b941dc54dc334dc6e660f1592d112cd103d914a6db"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e75ba609dba23f2c95b776efb9dd3f0b78a76a151e96f96cc5b6b1b0004de66f"}, + {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1791ff70bc975b098fe6ecf04356a10e9e2bd7dc21fa7351c1742fdeb9b4966f"}, + {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d126b52e4a473d40232ec2052a8b232270ed1f8c9571aaf33f73a14cc298c24f"}, + {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c14937af98c4cc362a1d4374806204dd51b1e12dded1ae30645c298e5a5c4cb1"}, + {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:3d089d0b88996df627693639d123c8158cff41c0651f646cd8fd292c7da90eaf"}, + {file = "rpds_py-0.20.1-cp39-none-win32.whl", hash = "sha256:653647b8838cf83b2e7e6a0364f49af96deec64d2a6578324db58380cff82aca"}, + {file = "rpds_py-0.20.1-cp39-none-win_amd64.whl", hash = "sha256:fa41a64ac5b08b292906e248549ab48b69c5428f3987b09689ab2441f267d04d"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:7a07ced2b22f0cf0b55a6a510078174c31b6d8544f3bc00c2bcee52b3d613f74"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:68cb0a499f2c4a088fd2f521453e22ed3527154136a855c62e148b7883b99f9a"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fa3060d885657abc549b2a0f8e1b79699290e5d83845141717c6c90c2df38311"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:95f3b65d2392e1c5cec27cff08fdc0080270d5a1a4b2ea1d51d5f4a2620ff08d"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2cc3712a4b0b76a1d45a9302dd2f53ff339614b1c29603a911318f2357b04dd2"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d4eea0761e37485c9b81400437adb11c40e13ef513375bbd6973e34100aeb06"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f5179583d7a6cdb981151dd349786cbc318bab54963a192692d945dd3f6435d"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2fbb0ffc754490aff6dabbf28064be47f0f9ca0b9755976f945214965b3ace7e"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:a94e52537a0e0a85429eda9e49f272ada715506d3b2431f64b8a3e34eb5f3e75"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:92b68b79c0da2a980b1c4197e56ac3dd0c8a149b4603747c4378914a68706979"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:93da1d3db08a827eda74356f9f58884adb254e59b6664f64cc04cdff2cc19b0d"}, + {file = "rpds_py-0.20.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:754bbed1a4ca48479e9d4182a561d001bbf81543876cdded6f695ec3d465846b"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ca449520e7484534a2a44faf629362cae62b660601432d04c482283c47eaebab"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:9c4cb04a16b0f199a8c9bf807269b2f63b7b5b11425e4a6bd44bd6961d28282c"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb63804105143c7e24cee7db89e37cb3f3941f8e80c4379a0b355c52a52b6780"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:55cd1fa4ecfa6d9f14fbd97ac24803e6f73e897c738f771a9fe038f2f11ff07c"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0f8f741b6292c86059ed175d80eefa80997125b7c478fb8769fd9ac8943a16c0"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fc212779bf8411667234b3cdd34d53de6c2b8b8b958e1e12cb473a5f367c338"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ad56edabcdb428c2e33bbf24f255fe2b43253b7d13a2cdbf05de955217313e6"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0a3a1e9ee9728b2c1734f65d6a1d376c6f2f6fdcc13bb007a08cc4b1ff576dc5"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:e13de156137b7095442b288e72f33503a469aa1980ed856b43c353ac86390519"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:07f59760ef99f31422c49038964b31c4dfcfeb5d2384ebfc71058a7c9adae2d2"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:59240685e7da61fb78f65a9f07f8108e36a83317c53f7b276b4175dc44151684"}, + {file = "rpds_py-0.20.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:83cba698cfb3c2c5a7c3c6bac12fe6c6a51aae69513726be6411076185a8b24a"}, + {file = "rpds_py-0.20.1.tar.gz", hash = "sha256:e1791c4aabd117653530dccd24108fa03cc6baf21f58b950d0a73c3b3b29a350"}, ] [[package]] @@ -2353,15 +2551,35 @@ nativelib = ["pyobjc-framework-Cocoa", "pywin32"] objc = ["pyobjc-framework-Cocoa"] win32 = ["pywin32"] +[[package]] +name = "setuptools" +version = "75.3.0" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-75.3.0-py3-none-any.whl", hash = "sha256:f2504966861356aa38616760c0f66568e535562374995367b4e69c7143cf6bcd"}, + {file = "setuptools-75.3.0.tar.gz", hash = "sha256:fba5dd4d766e97be1b1681d98712680ae8f2f26d7881245f2ce9e40714f1a686"}, +] + +[package.extras] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.5.2)"] +core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.collections", "jaraco.functools", "jaraco.text (>=3.7)", "more-itertools", "more-itertools (>=8.8)", "packaging", "packaging (>=24)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] +cover = ["pytest-cov"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +enabler = ["pytest-enabler (>=2.2)"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test (>=5.5)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] +type = ["importlib-metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (==1.12.*)", "pytest-mypy"] + [[package]] name = "six" -version = "1.16.0" +version = "1.17.0" description = "Python 2 and 3 compatibility utilities" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, + {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, + {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, ] [[package]] @@ -2377,13 +2595,13 @@ files = [ [[package]] name = "soupsieve" -version = "2.5" +version = "2.6" description = "A modern CSS selector implementation for Beautiful Soup." optional = false python-versions = ">=3.8" files = [ - {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, - {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, + {file = "soupsieve-2.6-py3-none-any.whl", hash = "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9"}, + {file = "soupsieve-2.6.tar.gz", hash = "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb"}, ] [[package]] @@ -2428,13 +2646,13 @@ typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] [[package]] name = "tinycss2" -version = "1.2.1" +version = "1.4.0" description = "A tiny CSS parser" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"}, - {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"}, + {file = "tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289"}, + {file = "tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7"}, ] [package.dependencies] @@ -2442,65 +2660,95 @@ webencodings = ">=0.4" [package.extras] doc = ["sphinx", "sphinx_rtd_theme"] -test = ["flake8", "isort", "pytest"] +test = ["pytest", "ruff"] [[package]] name = "tomli" -version = "2.0.1" +version = "2.2.1" description = "A lil' TOML parser" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, + {file = "tomli-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678e4fa69e4575eb77d103de3df8a895e1591b48e740211bd1067378c69e8249"}, + {file = "tomli-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:023aa114dd824ade0100497eb2318602af309e5a55595f76b626d6d9f3b7b0a6"}, + {file = "tomli-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ece47d672db52ac607a3d9599a9d48dcb2f2f735c6c2d1f34130085bb12b112a"}, + {file = "tomli-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6972ca9c9cc9f0acaa56a8ca1ff51e7af152a9f87fb64623e31d5c83700080ee"}, + {file = "tomli-2.2.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c954d2250168d28797dd4e3ac5cf812a406cd5a92674ee4c8f123c889786aa8e"}, + {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8dd28b3e155b80f4d54beb40a441d366adcfe740969820caf156c019fb5c7ec4"}, + {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e59e304978767a54663af13c07b3d1af22ddee3bb2fb0618ca1593e4f593a106"}, + {file = "tomli-2.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:33580bccab0338d00994d7f16f4c4ec25b776af3ffaac1ed74e0b3fc95e885a8"}, + {file = "tomli-2.2.1-cp311-cp311-win32.whl", hash = "sha256:465af0e0875402f1d226519c9904f37254b3045fc5084697cefb9bdde1ff99ff"}, + {file = "tomli-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:2d0f2fdd22b02c6d81637a3c95f8cd77f995846af7414c5c4b8d0545afa1bc4b"}, + {file = "tomli-2.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4a8f6e44de52d5e6c657c9fe83b562f5f4256d8ebbfe4ff922c495620a7f6cea"}, + {file = "tomli-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8d57ca8095a641b8237d5b079147646153d22552f1c637fd3ba7f4b0b29167a8"}, + {file = "tomli-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e340144ad7ae1533cb897d406382b4b6fede8890a03738ff1683af800d54192"}, + {file = "tomli-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db2b95f9de79181805df90bedc5a5ab4c165e6ec3fe99f970d0e302f384ad222"}, + {file = "tomli-2.2.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:40741994320b232529c802f8bc86da4e1aa9f413db394617b9a256ae0f9a7f77"}, + {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:400e720fe168c0f8521520190686ef8ef033fb19fc493da09779e592861b78c6"}, + {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:02abe224de6ae62c19f090f68da4e27b10af2b93213d36cf44e6e1c5abd19fdd"}, + {file = "tomli-2.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b82ebccc8c8a36f2094e969560a1b836758481f3dc360ce9a3277c65f374285e"}, + {file = "tomli-2.2.1-cp312-cp312-win32.whl", hash = "sha256:889f80ef92701b9dbb224e49ec87c645ce5df3fa2cc548664eb8a25e03127a98"}, + {file = "tomli-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4"}, + {file = "tomli-2.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f4039b9cbc3048b2416cc57ab3bda989a6fcf9b36cf8937f01a6e731b64f80d7"}, + {file = "tomli-2.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:286f0ca2ffeeb5b9bd4fcc8d6c330534323ec51b2f52da063b11c502da16f30c"}, + {file = "tomli-2.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a92ef1a44547e894e2a17d24e7557a5e85a9e1d0048b0b5e7541f76c5032cb13"}, + {file = "tomli-2.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9316dc65bed1684c9a98ee68759ceaed29d229e985297003e494aa825ebb0281"}, + {file = "tomli-2.2.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e85e99945e688e32d5a35c1ff38ed0b3f41f43fad8df0bdf79f72b2ba7bc5272"}, + {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ac065718db92ca818f8d6141b5f66369833d4a80a9d74435a268c52bdfa73140"}, + {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:d920f33822747519673ee656a4b6ac33e382eca9d331c87770faa3eef562aeb2"}, + {file = "tomli-2.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a198f10c4d1b1375d7687bc25294306e551bf1abfa4eace6650070a5c1ae2744"}, + {file = "tomli-2.2.1-cp313-cp313-win32.whl", hash = "sha256:d3f5614314d758649ab2ab3a62d4f2004c825922f9e370b29416484086b264ec"}, + {file = "tomli-2.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69"}, + {file = "tomli-2.2.1-py3-none-any.whl", hash = "sha256:cb55c73c5f4408779d0cf3eef9f762b9c9f147a77de7b258bef0a5628adc85cc"}, + {file = "tomli-2.2.1.tar.gz", hash = "sha256:cd45e1dc79c835ce60f7404ec8119f2eb06d38b1deba146f07ced3bbc44505ff"}, ] [[package]] name = "tornado" -version = "6.4" +version = "6.4.2" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." optional = false -python-versions = ">= 3.8" +python-versions = ">=3.8" files = [ - {file = "tornado-6.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"}, - {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e43bc2e5370a6a8e413e1e1cd0c91bedc5bd62a74a532371042a18ef19e10579"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0251554cdd50b4b44362f73ad5ba7126fc5b2c2895cc62b14a1c2d7ea32f212"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fd03192e287fbd0899dd8f81c6fb9cbbc69194d2074b38f384cb6fa72b80e9c2"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:88b84956273fbd73420e6d4b8d5ccbe913c65d31351b4c004ae362eba06e1f78"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:71ddfc23a0e03ef2df1c1397d859868d158c8276a0603b96cf86892bff58149f"}, - {file = "tornado-6.4-cp38-abi3-win32.whl", hash = "sha256:6f8a6c77900f5ae93d8b4ae1196472d0ccc2775cc1dfdc9e7727889145c45052"}, - {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"}, - {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"}, + {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e828cce1123e9e44ae2a50a9de3055497ab1d0aeb440c5ac23064d9e44880da1"}, + {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:072ce12ada169c5b00b7d92a99ba089447ccc993ea2143c9ede887e0937aa803"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a017d239bd1bb0919f72af256a970624241f070496635784d9bf0db640d3fec"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c36e62ce8f63409301537222faffcef7dfc5284f27eec227389f2ad11b09d946"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bca9eb02196e789c9cb5c3c7c0f04fb447dc2adffd95265b2c7223a8a615ccbf"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:304463bd0772442ff4d0f5149c6f1c2135a1fae045adf070821c6cdc76980634"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:c82c46813ba483a385ab2a99caeaedf92585a1f90defb5693351fa7e4ea0bf73"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:932d195ca9015956fa502c6b56af9eb06106140d844a335590c1ec7f5277d10c"}, + {file = "tornado-6.4.2-cp38-abi3-win32.whl", hash = "sha256:2876cef82e6c5978fde1e0d5b1f919d756968d5b4282418f3146b79b58556482"}, + {file = "tornado-6.4.2-cp38-abi3-win_amd64.whl", hash = "sha256:908b71bf3ff37d81073356a5fadcc660eb10c1476ee6e2725588626ce7e5ca38"}, + {file = "tornado-6.4.2.tar.gz", hash = "sha256:92bad5b4746e9879fd7bf1eb21dce4e3fc5128d71601f80005afa39237ad620b"}, ] [[package]] name = "tox" -version = "4.14.2" +version = "4.23.2" description = "tox is a generic virtualenv management and test command line tool" optional = false python-versions = ">=3.8" files = [ - {file = "tox-4.14.2-py3-none-any.whl", hash = "sha256:2900c4eb7b716af4a928a7fdc2ed248ad6575294ed7cfae2ea41203937422847"}, - {file = "tox-4.14.2.tar.gz", hash = "sha256:0defb44f6dafd911b61788325741cc6b2e12ea71f987ac025ad4d649f1f1a104"}, + {file = "tox-4.23.2-py3-none-any.whl", hash = "sha256:452bc32bb031f2282881a2118923176445bac783ab97c874b8770ab4c3b76c38"}, + {file = "tox-4.23.2.tar.gz", hash = "sha256:86075e00e555df6e82e74cfc333917f91ecb47ffbc868dcafbd2672e332f4a2c"}, ] [package.dependencies] -cachetools = ">=5.3.2" +cachetools = ">=5.5" chardet = ">=5.2" colorama = ">=0.4.6" -filelock = ">=3.13.1" -packaging = ">=23.2" -platformdirs = ">=4.1" -pluggy = ">=1.3" -pyproject-api = ">=1.6.1" +filelock = ">=3.16.1" +packaging = ">=24.1" +platformdirs = ">=4.3.6" +pluggy = ">=1.5" +pyproject-api = ">=1.8" tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} -virtualenv = ">=20.25" +typing-extensions = {version = ">=4.12.2", markers = "python_version < \"3.11\""} +virtualenv = ">=20.26.6" [package.extras] -docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-argparse-cli (>=1.11.1)", "sphinx-autodoc-typehints (>=1.25.2)", "sphinx-copybutton (>=0.5.2)", "sphinx-inline-tabs (>=2023.4.21)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.11)"] -testing = ["build[virtualenv] (>=1.0.3)", "covdefaults (>=2.3)", "detect-test-pollution (>=1.2)", "devpi-process (>=1)", "diff-cover (>=8.0.2)", "distlib (>=0.3.8)", "flaky (>=3.7)", "hatch-vcs (>=0.4)", "hatchling (>=1.21)", "psutil (>=5.9.7)", "pytest (>=7.4.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-xdist (>=3.5)", "re-assert (>=1.1)", "time-machine (>=2.13)", "wheel (>=0.42)"] +test = ["devpi-process (>=1.0.2)", "pytest (>=8.3.3)", "pytest-mock (>=3.14)"] [[package]] name = "traitlets" @@ -2519,24 +2767,35 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0, [[package]] name = "types-python-dateutil" -version = "2.9.0.20240316" +version = "2.9.0.20241206" description = "Typing stubs for python-dateutil" optional = false python-versions = ">=3.8" files = [ - {file = "types-python-dateutil-2.9.0.20240316.tar.gz", hash = "sha256:5d2f2e240b86905e40944dd787db6da9263f0deabef1076ddaed797351ec0202"}, - {file = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl", hash = "sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b"}, + {file = "types_python_dateutil-2.9.0.20241206-py3-none-any.whl", hash = "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53"}, + {file = "types_python_dateutil-2.9.0.20241206.tar.gz", hash = "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb"}, ] [[package]] name = "typing-extensions" -version = "4.11.0" +version = "4.12.2" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, - {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, + {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, + {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, +] + +[[package]] +name = "tzdata" +version = "2024.2" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd"}, + {file = "tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc"}, ] [[package]] @@ -2555,13 +2814,13 @@ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake [[package]] name = "urllib3" -version = "2.2.1" +version = "2.2.3" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, - {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, + {file = "urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac"}, + {file = "urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9"}, ] [package.extras] @@ -2572,13 +2831,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "virtualenv" -version = "20.25.3" +version = "20.28.0" description = "Virtual Python Environment builder" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "virtualenv-20.25.3-py3-none-any.whl", hash = "sha256:8aac4332f2ea6ef519c648d0bc48a5b1d324994753519919bddbb1aff25a104e"}, - {file = "virtualenv-20.25.3.tar.gz", hash = "sha256:7bb554bbdfeaacc3349fa614ea5bff6ac300fc7c335e9facf3a3bcfc703f45be"}, + {file = "virtualenv-20.28.0-py3-none-any.whl", hash = "sha256:23eae1b4516ecd610481eda647f3a7c09aea295055337331bb4e6892ecce47b0"}, + {file = "virtualenv-20.28.0.tar.gz", hash = "sha256:2c9c3262bb8e7b87ea801d715fae4495e6032450c71d2309be9550e7364049aa"}, ] [package.dependencies] @@ -2603,18 +2862,18 @@ files = [ [[package]] name = "webcolors" -version = "1.13" +version = "24.8.0" description = "A library for working with the color formats defined by HTML and CSS." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"}, - {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"}, + {file = "webcolors-24.8.0-py3-none-any.whl", hash = "sha256:fc4c3b59358ada164552084a8ebee637c221e4059267d0f8325b3b560f6c7f0a"}, + {file = "webcolors-24.8.0.tar.gz", hash = "sha256:08b07af286a01bcd30d583a7acadf629583d1f79bfef27dd2c2c5c263817277d"}, ] [package.extras] docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] -tests = ["pytest", "pytest-cov"] +tests = ["coverage[toml]"] [[package]] name = "webencodings" @@ -2629,47 +2888,51 @@ files = [ [[package]] name = "websocket-client" -version = "1.7.0" +version = "1.8.0" description = "WebSocket client for Python with low level API options" optional = false python-versions = ">=3.8" files = [ - {file = "websocket-client-1.7.0.tar.gz", hash = "sha256:10e511ea3a8c744631d3bd77e61eb17ed09304c413ad42cf6ddfa4c7787e8fe6"}, - {file = "websocket_client-1.7.0-py3-none-any.whl", hash = "sha256:f4c3d22fec12a2461427a29957ff07d35098ee2d976d3ba244e688b8b4057588"}, + {file = "websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526"}, + {file = "websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da"}, ] [package.extras] -docs = ["Sphinx (>=6.0)", "sphinx-rtd-theme (>=1.1.0)"] +docs = ["Sphinx (>=6.0)", "myst-parser (>=2.0.0)", "sphinx-rtd-theme (>=1.1.0)"] optional = ["python-socks", "wsaccel"] test = ["websockets"] [[package]] name = "widgetsnbextension" -version = "4.0.10" +version = "4.0.13" description = "Jupyter interactive widgets for Jupyter Notebook" optional = false python-versions = ">=3.7" files = [ - {file = "widgetsnbextension-4.0.10-py3-none-any.whl", hash = "sha256:d37c3724ec32d8c48400a435ecfa7d3e259995201fbefa37163124a9fcb393cc"}, - {file = "widgetsnbextension-4.0.10.tar.gz", hash = "sha256:64196c5ff3b9a9183a8e699a4227fb0b7002f252c814098e66c4d1cd0644688f"}, + {file = "widgetsnbextension-4.0.13-py3-none-any.whl", hash = "sha256:74b2692e8500525cc38c2b877236ba51d34541e6385eeed5aec15a70f88a6c71"}, + {file = "widgetsnbextension-4.0.13.tar.gz", hash = "sha256:ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6"}, ] [[package]] name = "zipp" -version = "3.18.1" +version = "3.21.0" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "zipp-3.18.1-py3-none-any.whl", hash = "sha256:206f5a15f2af3dbaee80769fb7dc6f249695e940acca08dfb2a4769fe61e538b"}, - {file = "zipp-3.18.1.tar.gz", hash = "sha256:2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"}, + {file = "zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931"}, + {file = "zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +cover = ["pytest-cov"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +enabler = ["pytest-enabler (>=2.2)"] +test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] +type = ["pytest-mypy"] [metadata] lock-version = "2.0" -python-versions = "^3.9" -content-hash = "740ed973f7a4af20f6ad47502b25c082943e1b04f2d7ca97b16bb502c65d2ceb" +python-versions = "3.9.*" +content-hash = "6715a0a5feb365ecbf907f84a027cc4688c27e88a321859677fe0d474814c79d" diff --git a/python-restclient/pyproject.toml b/python-restclient/pyproject.toml index ec8675c605..e672fd7dfe 100644 --- a/python-restclient/pyproject.toml +++ b/python-restclient/pyproject.toml @@ -10,12 +10,15 @@ keywords = ["OpenAPI", "OpenAPI-Generator", "VCell API"] include = ["vcell_client/py.typed"] [tool.poetry.dependencies] -python = "^3.7" +python = "3.9.*" urllib3 = ">= 1.25.3" python-dateutil = ">=2.8.2" -pydantic = ">=2" -typing-extensions = ">=4.7.1" +pydantic = ">=2.10.4" +typing-extensions = ">=4.6.0" +pandas = ">=2" +jupyter = "^1.1.1" +requests_oauth2client = ">=1.6.0" [tool.poetry.dev-dependencies] pytest = ">=7.2.1" From 6c3736fe40abcba6e1b1bf0a483c4a9e8210508b Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Thu, 2 Jan 2025 10:56:28 -0500 Subject: [PATCH 26/37] Auto Generated Rest Clients --- python-restclient/.openapi-generator/FILES | 31 +- python-restclient/README.md | 25 +- python-restclient/docs/BioModelResourceApi.md | 2 +- .../docs/ExternalDataIdentifier.md | 1 - python-restclient/docs/FieldDataReference.md | 30 + .../docs/FieldDataResourceApi.md | 222 +-- python-restclient/docs/FieldDataShape.md | 32 + python-restclient/docs/ISize.md | 1 - .../docs/SimulationResourceApi.md | 6 +- python-restclient/docs/User.md | 1 - python-restclient/docs/UsersResourceApi.md | 12 +- .../test/test_field_data_reference.py | 72 + .../test/test_field_data_shape.py | 87 ++ python-restclient/vcell_client/__init__.py | 15 +- .../api/bio_model_resource_api.py | 12 +- .../api/field_data_resource_api.py | 860 ++---------- .../api/simulation_resource_api.py | 36 +- .../vcell_client/api/users_resource_api.py | 48 +- .../vcell_client/models/__init__.py | 15 +- .../models/external_data_identifier.py | 4 +- .../models/field_data_reference.py | 110 ++ .../vcell_client/models/field_data_shape.py | 122 ++ .../vcell_client/models/i_size.py | 7 +- python-restclient/vcell_client/models/user.py | 7 +- vcell-restclient/.openapi-generator/FILES | 34 +- vcell-restclient/README.md | 35 +- vcell-restclient/api/openapi.yaml | 1236 ++--------------- vcell-restclient/docs/BioModelResourceApi.md | 4 +- .../docs/ExternalDataIdentifier.md | 1 - vcell-restclient/docs/FieldDataReference.md | 15 + vcell-restclient/docs/FieldDataResourceApi.md | 412 +----- vcell-restclient/docs/FieldDataShape.md | 17 + vcell-restclient/docs/ISize.md | 1 - .../docs/SimulationResourceApi.md | 12 +- vcell-restclient/docs/User.md | 1 - vcell-restclient/docs/UsersResourceApi.md | 24 +- .../restclient/api/FieldDataResourceApi.java | 348 ++--- .../model/ExternalDataIdentifier.java | 38 +- .../restclient/model/FieldDataReference.java | 239 ++++ .../restclient/model/FieldDataShape.java | 325 +++++ .../org/vcell/restclient/model/ISize.java | 42 +- .../java/org/vcell/restclient/model/User.java | 38 +- .../api/FieldDataResourceApiTest.java | 64 +- .../model/FieldDataReferenceTest.java | 68 + .../restclient/model/FieldDataShapeTest.java | 86 ++ .../modules/openapi/.openapi-generator/FILES | 15 +- .../api/field-data-resource.service.ts | 274 +--- .../field-data-resource.serviceInterface.ts | 46 +- .../openapi/model/external-data-identifier.ts | 1 - .../openapi/model/field-data-reference.ts | 21 + .../modules/openapi/model/field-data-shape.ts | 25 + .../app/core/modules/openapi/model/i-size.ts | 1 - .../app/core/modules/openapi/model/models.ts | 15 +- .../app/core/modules/openapi/model/user.ts | 1 - 54 files changed, 1953 insertions(+), 3244 deletions(-) create mode 100644 python-restclient/docs/FieldDataReference.md create mode 100644 python-restclient/docs/FieldDataShape.md create mode 100644 python-restclient/test/test_field_data_reference.py create mode 100644 python-restclient/test/test_field_data_shape.py create mode 100644 python-restclient/vcell_client/models/field_data_reference.py create mode 100644 python-restclient/vcell_client/models/field_data_shape.py create mode 100644 vcell-restclient/docs/FieldDataReference.md create mode 100644 vcell-restclient/docs/FieldDataShape.md create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java create mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataShape.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java create mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts create mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-shape.ts diff --git a/python-restclient/.openapi-generator/FILES b/python-restclient/.openapi-generator/FILES index e23e849145..59cbba1451 100644 --- a/python-restclient/.openapi-generator/FILES +++ b/python-restclient/.openapi-generator/FILES @@ -8,21 +8,15 @@ docs/BatchSystemType.md docs/BioModel.md docs/BioModelResourceApi.md docs/BiomodelRef.md -docs/CartesianMesh.md -docs/Coordinate.md docs/DataIdentifier.md docs/DetailedState.md docs/Domain.md docs/Extent.md docs/ExternalDataIdentifier.md -docs/FieldDataDBOperationSpec.md -docs/FieldDataFileOperationSpec.md -docs/FieldDataInfo.md -docs/FieldDataNoCopyConflict.md -docs/FieldDataReferences.md +docs/FieldDataReference.md docs/FieldDataResourceApi.md docs/FieldDataSaveResults.md -docs/GroupAccess.md +docs/FieldDataShape.md docs/HelloWorldApi.md docs/HelloWorldMessage.md docs/HtcJobID.md @@ -43,7 +37,6 @@ docs/SimulationResourceApi.md docs/SimulationStatusPersistentRecord.md docs/Status.md docs/StatusMessage.md -docs/UCDInfo.md docs/User.md docs/UserIdentityJSONSafe.md docs/UserLoginInfoForMapping.md @@ -52,12 +45,9 @@ docs/UsersResourceApi.md docs/VCSimulationIdentifier.md docs/VariableDomain.md docs/VariableType.md -docs/Version.md -docs/VersionFlag.md -docs/VersionableType.md -docs/VersionableTypeVersion.md pyproject.toml test/__init__.py +test/test_field_data_shape.py tox.ini vcell_client/__init__.py vcell_client/api/__init__.py @@ -78,20 +68,14 @@ vcell_client/models/analyzed_results_from_field_data.py vcell_client/models/batch_system_type.py vcell_client/models/bio_model.py vcell_client/models/biomodel_ref.py -vcell_client/models/cartesian_mesh.py -vcell_client/models/coordinate.py vcell_client/models/data_identifier.py vcell_client/models/detailed_state.py vcell_client/models/domain.py vcell_client/models/extent.py vcell_client/models/external_data_identifier.py -vcell_client/models/field_data_db_operation_spec.py -vcell_client/models/field_data_file_operation_spec.py -vcell_client/models/field_data_info.py -vcell_client/models/field_data_no_copy_conflict.py -vcell_client/models/field_data_references.py +vcell_client/models/field_data_reference.py vcell_client/models/field_data_save_results.py -vcell_client/models/group_access.py +vcell_client/models/field_data_shape.py vcell_client/models/hello_world_message.py vcell_client/models/htc_job_id.py vcell_client/models/i_size.py @@ -109,7 +93,6 @@ vcell_client/models/simulation_queue_id.py vcell_client/models/simulation_status_persistent_record.py vcell_client/models/status.py vcell_client/models/status_message.py -vcell_client/models/ucd_info.py vcell_client/models/user.py vcell_client/models/user_identity_json_safe.py vcell_client/models/user_login_info_for_mapping.py @@ -117,9 +100,5 @@ vcell_client/models/user_registration_info.py vcell_client/models/variable_domain.py vcell_client/models/variable_type.py vcell_client/models/vc_simulation_identifier.py -vcell_client/models/version.py -vcell_client/models/version_flag.py -vcell_client/models/versionable_type.py -vcell_client/models/versionable_type_version.py vcell_client/py.typed vcell_client/rest.py diff --git a/python-restclient/README.md b/python-restclient/README.md index 1c20a5588d..835d131595 100644 --- a/python-restclient/README.md +++ b/python-restclient/README.md @@ -89,13 +89,11 @@ Class | Method | HTTP request | Description *BioModelResourceApi* | [**delete_bio_model**](docs/BioModelResourceApi.md#delete_bio_model) | **DELETE** /api/v1/bioModel/{bioModelID} | Delete the BioModel from VCell's database. *BioModelResourceApi* | [**get_biomodel_by_id**](docs/BioModelResourceApi.md#get_biomodel_by_id) | **GET** /api/v1/bioModel/{bioModelID} | Get BioModel information in JSON format by ID. *BioModelResourceApi* | [**upload_bio_model**](docs/BioModelResourceApi.md#upload_bio_model) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. -*FieldDataResourceApi* | [**copy_field_data**](docs/FieldDataResourceApi.md#copy_field_data) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. -*FieldDataResourceApi* | [**create_new_field_data_from_file_already_analyzed**](docs/FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | -*FieldDataResourceApi* | [**create_new_field_data_from_simulation**](docs/FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. -*FieldDataResourceApi* | [**delete_field_data**](docs/FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. -*FieldDataResourceApi* | [**generate_field_data_estimate**](docs/FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +*FieldDataResourceApi* | [**analyze_field_data_file**](docs/FieldDataResourceApi.md#analyze_field_data_file) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. +*FieldDataResourceApi* | [**create_field_data_from_analyzed_file**](docs/FieldDataResourceApi.md#create_field_data_from_analyzed_file) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. +*FieldDataResourceApi* | [**delete_field_data**](docs/FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. *FieldDataResourceApi* | [**get_all_field_data_ids**](docs/FieldDataResourceApi.md#get_all_field_data_ids) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. -*FieldDataResourceApi* | [**get_field_data_from_id**](docs/FieldDataResourceApi.md#get_field_data_from_id) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. +*FieldDataResourceApi* | [**get_field_data_shape_from_id**](docs/FieldDataResourceApi.md#get_field_data_shape_from_id) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. *HelloWorldApi* | [**get_hello_world**](docs/HelloWorldApi.md#get_hello_world) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**create_publication**](docs/PublicationResourceApi.md#create_publication) | **POST** /api/v1/publications | Create publication *PublicationResourceApi* | [**delete_publication**](docs/PublicationResourceApi.md#delete_publication) | **DELETE** /api/v1/publications/{id} | Delete publication @@ -124,20 +122,14 @@ Class | Method | HTTP request | Description - [BatchSystemType](docs/BatchSystemType.md) - [BioModel](docs/BioModel.md) - [BiomodelRef](docs/BiomodelRef.md) - - [CartesianMesh](docs/CartesianMesh.md) - - [Coordinate](docs/Coordinate.md) - [DataIdentifier](docs/DataIdentifier.md) - [DetailedState](docs/DetailedState.md) - [Domain](docs/Domain.md) - [Extent](docs/Extent.md) - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) - - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) - - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) - - [FieldDataInfo](docs/FieldDataInfo.md) - - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) - - [FieldDataReferences](docs/FieldDataReferences.md) + - [FieldDataReference](docs/FieldDataReference.md) - [FieldDataSaveResults](docs/FieldDataSaveResults.md) - - [GroupAccess](docs/GroupAccess.md) + - [FieldDataShape](docs/FieldDataShape.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) - [HtcJobID](docs/HtcJobID.md) - [ISize](docs/ISize.md) @@ -155,7 +147,6 @@ Class | Method | HTTP request | Description - [SimulationStatusPersistentRecord](docs/SimulationStatusPersistentRecord.md) - [Status](docs/Status.md) - [StatusMessage](docs/StatusMessage.md) - - [UCDInfo](docs/UCDInfo.md) - [User](docs/User.md) - [UserIdentityJSONSafe](docs/UserIdentityJSONSafe.md) - [UserLoginInfoForMapping](docs/UserLoginInfoForMapping.md) @@ -163,10 +154,6 @@ Class | Method | HTTP request | Description - [VCSimulationIdentifier](docs/VCSimulationIdentifier.md) - [VariableDomain](docs/VariableDomain.md) - [VariableType](docs/VariableType.md) - - [Version](docs/Version.md) - - [VersionFlag](docs/VersionFlag.md) - - [VersionableType](docs/VersionableType.md) - - [VersionableTypeVersion](docs/VersionableTypeVersion.md) diff --git a/python-restclient/docs/BioModelResourceApi.md b/python-restclient/docs/BioModelResourceApi.md index 3e3f9a9ee9..7fb0b2e4b9 100644 --- a/python-restclient/docs/BioModelResourceApi.md +++ b/python-restclient/docs/BioModelResourceApi.md @@ -202,8 +202,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/ExternalDataIdentifier.md b/python-restclient/docs/ExternalDataIdentifier.md index a9e915209b..72fd3bbbac 100644 --- a/python-restclient/docs/ExternalDataIdentifier.md +++ b/python-restclient/docs/ExternalDataIdentifier.md @@ -7,7 +7,6 @@ Name | Type | Description | Notes **key** | [**KeyValue**](KeyValue.md) | | [optional] **owner** | [**User**](User.md) | | [optional] **name** | **str** | | [optional] -**i_d** | **str** | | [optional] **job_index** | **int** | | [optional] **simulation_key** | [**KeyValue**](KeyValue.md) | | [optional] **parameter_scan_type** | **bool** | | [optional] diff --git a/python-restclient/docs/FieldDataReference.md b/python-restclient/docs/FieldDataReference.md new file mode 100644 index 0000000000..defad764b4 --- /dev/null +++ b/python-restclient/docs/FieldDataReference.md @@ -0,0 +1,30 @@ +# FieldDataReference + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**external_data_identifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] +**external_data_annotation** | **str** | | [optional] +**external_data_id_sim_ref** | [**List[KeyValue]**](KeyValue.md) | | [optional] + +## Example + +```python +from vcell_client.models.field_data_reference import FieldDataReference + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataReference from a JSON string +field_data_reference_instance = FieldDataReference.from_json(json) +# print the JSON string representation of the object +print FieldDataReference.to_json() + +# convert the object into a dict +field_data_reference_dict = field_data_reference_instance.to_dict() +# create an instance of FieldDataReference from a dict +field_data_reference_form_dict = field_data_reference.from_dict(field_data_reference_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/FieldDataResourceApi.md b/python-restclient/docs/FieldDataResourceApi.md index 6f6c8fbc14..773ae5c8b2 100644 --- a/python-restclient/docs/FieldDataResourceApi.md +++ b/python-restclient/docs/FieldDataResourceApi.md @@ -4,19 +4,17 @@ All URIs are relative to *https://vcell-dev.cam.uchc.edu* Method | HTTP request | Description ------------- | ------------- | ------------- -[**copy_field_data**](FieldDataResourceApi.md#copy_field_data) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. -[**create_new_field_data_from_file_already_analyzed**](FieldDataResourceApi.md#create_new_field_data_from_file_already_analyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | -[**create_new_field_data_from_simulation**](FieldDataResourceApi.md#create_new_field_data_from_simulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. -[**delete_field_data**](FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData | Delete the selected field data. -[**generate_field_data_estimate**](FieldDataResourceApi.md#generate_field_data_estimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +[**analyze_field_data_file**](FieldDataResourceApi.md#analyze_field_data_file) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. +[**create_field_data_from_analyzed_file**](FieldDataResourceApi.md#create_field_data_from_analyzed_file) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. +[**delete_field_data**](FieldDataResourceApi.md#delete_field_data) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. [**get_all_field_data_ids**](FieldDataResourceApi.md#get_all_field_data_ids) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. -[**get_field_data_from_id**](FieldDataResourceApi.md#get_field_data_from_id) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. +[**get_field_data_shape_from_id**](FieldDataResourceApi.md#get_field_data_shape_from_id) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. -# **copy_field_data** -> FieldDataNoCopyConflict copy_field_data(field_data_db_operation_spec=field_data_db_operation_spec) +# **analyze_field_data_file** +> AnalyzedResultsFromFieldData analyze_field_data_file(file=file, file_name=file_name) -Copy an existing field data entry. +Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. ### Example @@ -24,8 +22,7 @@ Copy an existing field data entry. import time import os import vcell_client -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict +from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData from vcell_client.rest import ApiException from pprint import pprint @@ -40,15 +37,16 @@ configuration = vcell_client.Configuration( with vcell_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = vcell_client.FieldDataResourceApi(api_client) - field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) + file = None # bytearray | (optional) + file_name = 'file_name_example' # str | (optional) try: - # Copy an existing field data entry. - api_response = api_instance.copy_field_data(field_data_db_operation_spec=field_data_db_operation_spec) - print("The response of FieldDataResourceApi->copy_field_data:\n") + # Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. + api_response = api_instance.analyze_field_data_file(file=file, file_name=file_name) + print("The response of FieldDataResourceApi->analyze_field_data_file:\n") pprint(api_response) except Exception as e: - print("Exception when calling FieldDataResourceApi->copy_field_data: %s\n" % e) + print("Exception when calling FieldDataResourceApi->analyze_field_data_file: %s\n" % e) ``` @@ -57,11 +55,12 @@ with vcell_client.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] + **file** | **bytearray**| | [optional] + **file_name** | **str**| | [optional] ### Return type -[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md) +[**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md) ### Authorization @@ -69,7 +68,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: application/json + - **Content-Type**: multipart/form-data - **Accept**: application/json ### HTTP response details @@ -79,10 +78,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **create_new_field_data_from_file_already_analyzed** -> FieldDataSaveResults create_new_field_data_from_file_already_analyzed(analyzed_results_from_field_data=analyzed_results_from_field_data) - +# **create_field_data_from_analyzed_file** +> FieldDataSaveResults create_field_data_from_analyzed_file(analyzed_results_from_field_data=analyzed_results_from_field_data) +Take the analyzed results of the field data, modify it to your liking, then save it on the server. ### Example @@ -109,11 +108,12 @@ with vcell_client.ApiClient(configuration) as api_client: analyzed_results_from_field_data = vcell_client.AnalyzedResultsFromFieldData() # AnalyzedResultsFromFieldData | (optional) try: - api_response = api_instance.create_new_field_data_from_file_already_analyzed(analyzed_results_from_field_data=analyzed_results_from_field_data) - print("The response of FieldDataResourceApi->create_new_field_data_from_file_already_analyzed:\n") + # Take the analyzed results of the field data, modify it to your liking, then save it on the server. + api_response = api_instance.create_field_data_from_analyzed_file(analyzed_results_from_field_data=analyzed_results_from_field_data) + print("The response of FieldDataResourceApi->create_field_data_from_analyzed_file:\n") pprint(api_response) except Exception as e: - print("Exception when calling FieldDataResourceApi->create_new_field_data_from_file_already_analyzed: %s\n" % e) + print("Exception when calling FieldDataResourceApi->create_field_data_from_analyzed_file: %s\n" % e) ``` @@ -144,74 +144,8 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **create_new_field_data_from_simulation** -> ExternalDataIdentifier create_new_field_data_from_simulation(field_data_db_operation_spec=field_data_db_operation_spec) - -Create new field data from a simulation. - -### Example - -```python -import time -import os -import vcell_client -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu -# See configuration.py for a list of all supported configuration parameters. -configuration = vcell_client.Configuration( - host = "https://vcell-dev.cam.uchc.edu" -) - - -# Enter a context with an instance of the API client -with vcell_client.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = vcell_client.FieldDataResourceApi(api_client) - field_data_db_operation_spec = vcell_client.FieldDataDBOperationSpec() # FieldDataDBOperationSpec | (optional) - - try: - # Create new field data from a simulation. - api_response = api_instance.create_new_field_data_from_simulation(field_data_db_operation_spec=field_data_db_operation_spec) - print("The response of FieldDataResourceApi->create_new_field_data_from_simulation:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling FieldDataResourceApi->create_new_field_data_from_simulation: %s\n" % e) -``` - - - -### Parameters - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **field_data_db_operation_spec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] - -### Return type - -[**ExternalDataIdentifier**](ExternalDataIdentifier.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - # **delete_field_data** -> delete_field_data(body=body) +> delete_field_data(field_data_id) Delete the selected field data. @@ -235,11 +169,11 @@ configuration = vcell_client.Configuration( with vcell_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = vcell_client.FieldDataResourceApi(api_client) - body = 'body_example' # str | (optional) + field_data_id = 'field_data_id_example' # str | try: # Delete the selected field data. - api_instance.delete_field_data(body=body) + api_instance.delete_field_data(field_data_id) except Exception as e: print("Exception when calling FieldDataResourceApi->delete_field_data: %s\n" % e) ``` @@ -250,7 +184,7 @@ with vcell_client.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **body** | **str**| | [optional] + **field_data_id** | **str**| | ### Return type @@ -262,7 +196,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: text/plain + - **Content-Type**: Not defined - **Accept**: Not defined ### HTTP response details @@ -272,74 +206,8 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **generate_field_data_estimate** -> FieldDataFileOperationSpec generate_field_data_estimate(file=file, file_name=file_name) - - - -### Example - -```python -import time -import os -import vcell_client -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec -from vcell_client.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to https://vcell-dev.cam.uchc.edu -# See configuration.py for a list of all supported configuration parameters. -configuration = vcell_client.Configuration( - host = "https://vcell-dev.cam.uchc.edu" -) - - -# Enter a context with an instance of the API client -with vcell_client.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = vcell_client.FieldDataResourceApi(api_client) - file = None # bytearray | (optional) - file_name = 'file_name_example' # str | (optional) - - try: - api_response = api_instance.generate_field_data_estimate(file=file, file_name=file_name) - print("The response of FieldDataResourceApi->generate_field_data_estimate:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling FieldDataResourceApi->generate_field_data_estimate: %s\n" % e) -``` - - - -### Parameters - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **file** | **bytearray**| | [optional] - **file_name** | **str**| | [optional] - -### Return type - -[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: multipart/form-data - - **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - # **get_all_field_data_ids** -> FieldDataReferences get_all_field_data_ids() +> List[FieldDataReference] get_all_field_data_ids() Get all of the ids used to identify, and retrieve field data. @@ -349,7 +217,7 @@ Get all of the ids used to identify, and retrieve field data. import time import os import vcell_client -from vcell_client.models.field_data_references import FieldDataReferences +from vcell_client.models.field_data_reference import FieldDataReference from vcell_client.rest import ApiException from pprint import pprint @@ -381,7 +249,7 @@ This endpoint does not need any parameter. ### Return type -[**FieldDataReferences**](FieldDataReferences.md) +[**List[FieldDataReference]**](FieldDataReference.md) ### Authorization @@ -399,10 +267,10 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_field_data_from_id** -> FieldDataInfo get_field_data_from_id(body=body) +# **get_field_data_shape_from_id** +> FieldDataShape get_field_data_shape_from_id(field_data_id) -Get the field data from the selected field data ID. +Get the shape of the field data. That is it's size, origin, extent, and data identifiers. ### Example @@ -410,7 +278,7 @@ Get the field data from the selected field data ID. import time import os import vcell_client -from vcell_client.models.field_data_info import FieldDataInfo +from vcell_client.models.field_data_shape import FieldDataShape from vcell_client.rest import ApiException from pprint import pprint @@ -425,15 +293,15 @@ configuration = vcell_client.Configuration( with vcell_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = vcell_client.FieldDataResourceApi(api_client) - body = 'body_example' # str | (optional) + field_data_id = 'field_data_id_example' # str | try: - # Get the field data from the selected field data ID. - api_response = api_instance.get_field_data_from_id(body=body) - print("The response of FieldDataResourceApi->get_field_data_from_id:\n") + # Get the shape of the field data. That is it's size, origin, extent, and data identifiers. + api_response = api_instance.get_field_data_shape_from_id(field_data_id) + print("The response of FieldDataResourceApi->get_field_data_shape_from_id:\n") pprint(api_response) except Exception as e: - print("Exception when calling FieldDataResourceApi->get_field_data_from_id: %s\n" % e) + print("Exception when calling FieldDataResourceApi->get_field_data_shape_from_id: %s\n" % e) ``` @@ -442,11 +310,11 @@ with vcell_client.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **body** | **str**| | [optional] + **field_data_id** | **str**| | ### Return type -[**FieldDataInfo**](FieldDataInfo.md) +[**FieldDataShape**](FieldDataShape.md) ### Authorization @@ -454,7 +322,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: text/plain + - **Content-Type**: Not defined - **Accept**: application/json ### HTTP response details diff --git a/python-restclient/docs/FieldDataShape.md b/python-restclient/docs/FieldDataShape.md new file mode 100644 index 0000000000..e02c7c2ed4 --- /dev/null +++ b/python-restclient/docs/FieldDataShape.md @@ -0,0 +1,32 @@ +# FieldDataShape + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**extent** | [**Extent**](Extent.md) | | [optional] +**origin** | [**Origin**](Origin.md) | | [optional] +**isize** | [**ISize**](ISize.md) | | [optional] +**data_identifier** | [**List[DataIdentifier]**](DataIdentifier.md) | | [optional] +**times** | **List[float]** | | [optional] + +## Example + +```python +from vcell_client.models.field_data_shape import FieldDataShape + +# TODO update the JSON string below +json = "{}" +# create an instance of FieldDataShape from a JSON string +field_data_shape_instance = FieldDataShape.from_json(json) +# print the JSON string representation of the object +print FieldDataShape.to_json() + +# convert the object into a dict +field_data_shape_dict = field_data_shape_instance.to_dict() +# create an instance of FieldDataShape from a dict +field_data_shape_form_dict = field_data_shape.from_dict(field_data_shape_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/python-restclient/docs/ISize.md b/python-restclient/docs/ISize.md index 6a5d64968b..adca67e859 100644 --- a/python-restclient/docs/ISize.md +++ b/python-restclient/docs/ISize.md @@ -7,7 +7,6 @@ Name | Type | Description | Notes **x** | **int** | | [optional] **y** | **int** | | [optional] **z** | **int** | | [optional] -**x_yz** | **int** | | [optional] ## Example diff --git a/python-restclient/docs/SimulationResourceApi.md b/python-restclient/docs/SimulationResourceApi.md index 6ff98f6be7..6d8316759f 100644 --- a/python-restclient/docs/SimulationResourceApi.md +++ b/python-restclient/docs/SimulationResourceApi.md @@ -79,8 +79,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -150,8 +150,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -221,8 +221,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/docs/User.md b/python-restclient/docs/User.md index c08eb10e92..4cdbaa42b6 100644 --- a/python-restclient/docs/User.md +++ b/python-restclient/docs/User.md @@ -6,7 +6,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **user_name** | **str** | | [optional] **key** | [**KeyValue**](KeyValue.md) | | [optional] -**i_d** | [**KeyValue**](KeyValue.md) | | [optional] **name** | **str** | | [optional] **test_account** | **bool** | | [optional] diff --git a/python-restclient/docs/UsersResourceApi.md b/python-restclient/docs/UsersResourceApi.md index c43e72100f..4260e1d68a 100644 --- a/python-restclient/docs/UsersResourceApi.md +++ b/python-restclient/docs/UsersResourceApi.md @@ -208,8 +208,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -275,8 +275,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | Successful, returning the identity | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -406,8 +406,8 @@ void (empty response body) |-------------|-------------|------------------| **200** | Successful, returning the identity | - | **409** | VCell Identity not mapped, userid already exists | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -477,8 +477,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -611,8 +611,8 @@ void (empty response body) |-------------|-------------|------------------| **200** | magic link sent in email if appropriate | - | **400** | unable to process request | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -681,8 +681,8 @@ Name | Type | Description | Notes | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**403** | Not Allowed | - | **401** | Not Authorized | - | +**403** | Not Allowed | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/python-restclient/test/test_field_data_reference.py b/python-restclient/test/test_field_data_reference.py new file mode 100644 index 0000000000..714789fb37 --- /dev/null +++ b/python-restclient/test/test_field_data_reference.py @@ -0,0 +1,72 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_reference import FieldDataReference + +class TestFieldDataReference(unittest.TestCase): + """FieldDataReference unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataReference: + """Test FieldDataReference + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataReference` + """ + model = FieldDataReference() + if include_optional: + return FieldDataReference( + external_data_identifier = vcell_client.models.external_data_identifier.ExternalDataIdentifier( + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + owner = vcell_client.models.user.User( + user_name = '', + i_d = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True, ), + name = '', + i_d = '', + job_index = 56, + simulation_key = , + parameter_scan_type = True, + data_key = , ), + external_data_annotation = '', + external_data_id_sim_ref = [ + vcell_client.models.key_value.KeyValue( + value = 1.337, ) + ] + ) + else: + return FieldDataReference( + ) + """ + + def testFieldDataReference(self): + """Test FieldDataReference""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/test/test_field_data_shape.py b/python-restclient/test/test_field_data_shape.py new file mode 100644 index 0000000000..27397f960c --- /dev/null +++ b/python-restclient/test/test_field_data_shape.py @@ -0,0 +1,87 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest +import datetime + +from vcell_client.models.field_data_shape import FieldDataShape + +class TestFieldDataShape(unittest.TestCase): + """FieldDataShape unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> FieldDataShape: + """Test FieldDataShape + include_option is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `FieldDataShape` + """ + model = FieldDataShape() + if include_optional: + return FieldDataShape( + extent = vcell_client.models.extent.Extent( + x = 1.337, + y = 1.337, + z = 1.337, ), + origin = vcell_client.models.origin.Origin( + x = 1.337, + y = 1.337, + z = 1.337, ), + isize = vcell_client.models.i_size.ISize( + x = 56, + y = 56, + z = 56, ), + data_identifier = [ + vcell_client.models.data_identifier.DataIdentifier( + name = '', + display_name = '', + variable_type = vcell_client.models.variable_type.VariableType( + type = 56, + variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', + name = '', + units = '', + label = '', + legacy_warn = True, + default_label = '', + default_units = '', + type_name = '', ), + domain = vcell_client.models.domain.Domain( + name = '', ), + b_function = True, + function = True, + visible = True, ) + ], + times = [ + 1.337 + ] + ) + else: + return FieldDataShape( + ) + """ + + def testFieldDataShape(self): + """Test FieldDataShape""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/python-restclient/vcell_client/__init__.py b/python-restclient/vcell_client/__init__.py index 0daa8d7bc1..3112d5aa16 100644 --- a/python-restclient/vcell_client/__init__.py +++ b/python-restclient/vcell_client/__init__.py @@ -43,20 +43,14 @@ from vcell_client.models.batch_system_type import BatchSystemType from vcell_client.models.bio_model import BioModel from vcell_client.models.biomodel_ref import BiomodelRef -from vcell_client.models.cartesian_mesh import CartesianMesh -from vcell_client.models.coordinate import Coordinate from vcell_client.models.data_identifier import DataIdentifier from vcell_client.models.detailed_state import DetailedState from vcell_client.models.domain import Domain from vcell_client.models.extent import Extent from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec -from vcell_client.models.field_data_info import FieldDataInfo -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict -from vcell_client.models.field_data_references import FieldDataReferences +from vcell_client.models.field_data_reference import FieldDataReference from vcell_client.models.field_data_save_results import FieldDataSaveResults -from vcell_client.models.group_access import GroupAccess +from vcell_client.models.field_data_shape import FieldDataShape from vcell_client.models.hello_world_message import HelloWorldMessage from vcell_client.models.htc_job_id import HtcJobID from vcell_client.models.i_size import ISize @@ -74,7 +68,6 @@ from vcell_client.models.simulation_status_persistent_record import SimulationStatusPersistentRecord from vcell_client.models.status import Status from vcell_client.models.status_message import StatusMessage -from vcell_client.models.ucd_info import UCDInfo from vcell_client.models.user import User from vcell_client.models.user_identity_json_safe import UserIdentityJSONSafe from vcell_client.models.user_login_info_for_mapping import UserLoginInfoForMapping @@ -82,7 +75,3 @@ from vcell_client.models.vc_simulation_identifier import VCSimulationIdentifier from vcell_client.models.variable_domain import VariableDomain from vcell_client.models.variable_type import VariableType -from vcell_client.models.version import Version -from vcell_client.models.version_flag import VersionFlag -from vcell_client.models.versionable_type import VersionableType -from vcell_client.models.versionable_type_version import VersionableTypeVersion diff --git a/python-restclient/vcell_client/api/bio_model_resource_api.py b/python-restclient/vcell_client/api/bio_model_resource_api.py index adbb65b599..c31ac2bb00 100644 --- a/python-restclient/vcell_client/api/bio_model_resource_api.py +++ b/python-restclient/vcell_client/api/bio_model_resource_api.py @@ -612,8 +612,8 @@ def upload_bio_model( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -681,8 +681,8 @@ def upload_bio_model_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -750,8 +750,8 @@ def upload_bio_model_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "str", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/api/field_data_resource_api.py b/python-restclient/vcell_client/api/field_data_resource_api.py index a9dd790a0c..38733f46f7 100644 --- a/python-restclient/vcell_client/api/field_data_resource_api.py +++ b/python-restclient/vcell_client/api/field_data_resource_api.py @@ -26,16 +26,12 @@ from pydantic import StrictBytes, StrictStr -from typing import Optional, Union +from typing import List, Optional, Union from vcell_client.models.analyzed_results_from_field_data import AnalyzedResultsFromFieldData -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec -from vcell_client.models.field_data_info import FieldDataInfo -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict -from vcell_client.models.field_data_references import FieldDataReferences +from vcell_client.models.field_data_reference import FieldDataReference from vcell_client.models.field_data_save_results import FieldDataSaveResults +from vcell_client.models.field_data_shape import FieldDataShape from vcell_client.api_client import ApiClient from vcell_client.api_response import ApiResponse @@ -56,9 +52,10 @@ def __init__(self, api_client=None) -> None: @validate_call - def copy_field_data( + def analyze_field_data_file( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -71,12 +68,14 @@ def copy_field_data( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FieldDataNoCopyConflict: - """Copy an existing field data entry. + ) -> AnalyzedResultsFromFieldData: + """Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param file: + :type file: bytearray + :param file_name: + :type file_name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -99,8 +98,9 @@ def copy_field_data( :return: Returns the result object. """ # noqa: E501 - _param = self._copy_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._analyze_field_data_file_serialize( + file=file, + file_name=file_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -108,7 +108,7 @@ def copy_field_data( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataNoCopyConflict" + '200': "AnalyzedResultsFromFieldData" } response_data = self.api_client.call_api( @@ -123,9 +123,10 @@ def copy_field_data( @validate_call - def copy_field_data_with_http_info( + def analyze_field_data_file_with_http_info( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -138,12 +139,14 @@ def copy_field_data_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FieldDataNoCopyConflict]: - """Copy an existing field data entry. + ) -> ApiResponse[AnalyzedResultsFromFieldData]: + """Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param file: + :type file: bytearray + :param file_name: + :type file_name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -166,8 +169,9 @@ def copy_field_data_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._copy_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._analyze_field_data_file_serialize( + file=file, + file_name=file_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -175,7 +179,7 @@ def copy_field_data_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataNoCopyConflict" + '200': "AnalyzedResultsFromFieldData" } response_data = self.api_client.call_api( @@ -190,9 +194,10 @@ def copy_field_data_with_http_info( @validate_call - def copy_field_data_without_preload_content( + def analyze_field_data_file_without_preload_content( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + file: Optional[Union[StrictBytes, StrictStr]] = None, + file_name: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -206,11 +211,13 @@ def copy_field_data_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Copy an existing field data entry. + """Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param file: + :type file: bytearray + :param file_name: + :type file_name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -233,8 +240,9 @@ def copy_field_data_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._copy_field_data_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._analyze_field_data_file_serialize( + file=file, + file_name=file_name, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -242,7 +250,7 @@ def copy_field_data_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataNoCopyConflict" + '200': "AnalyzedResultsFromFieldData" } response_data = self.api_client.call_api( @@ -252,9 +260,10 @@ def copy_field_data_without_preload_content( return response_data.response - def _copy_field_data_serialize( + def _analyze_field_data_file_serialize( self, - field_data_db_operation_spec, + file, + file_name, _request_auth, _content_type, _headers, @@ -278,9 +287,11 @@ def _copy_field_data_serialize( # process the query parameters # process the header parameters # process the form parameters + if file is not None: + _files['file'] = file + if file_name is not None: + _form_params.append(('fileName', file_name)) # process the body parameter - if field_data_db_operation_spec is not None: - _body_params = field_data_db_operation_spec # set the HTTP header `Accept` @@ -297,7 +308,7 @@ def _copy_field_data_serialize( _default_content_type = ( self.api_client.select_header_content_type( [ - 'application/json' + 'multipart/form-data' ] ) ) @@ -310,7 +321,7 @@ def _copy_field_data_serialize( return self.api_client.param_serialize( method='POST', - resource_path='/api/v1/fieldData/copy', + resource_path='/api/v1/fieldData/analyzeFieldDataFile', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -327,7 +338,7 @@ def _copy_field_data_serialize( @validate_call - def create_new_field_data_from_file_already_analyzed( + def create_field_data_from_analyzed_file( self, analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, _request_timeout: Union[ @@ -343,7 +354,7 @@ def create_new_field_data_from_file_already_analyzed( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> FieldDataSaveResults: - """create_new_field_data_from_file_already_analyzed + """Take the analyzed results of the field data, modify it to your liking, then save it on the server. :param analyzed_results_from_field_data: @@ -370,7 +381,7 @@ def create_new_field_data_from_file_already_analyzed( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_file_already_analyzed_serialize( + _param = self._create_field_data_from_analyzed_file_serialize( analyzed_results_from_field_data=analyzed_results_from_field_data, _request_auth=_request_auth, _content_type=_content_type, @@ -394,7 +405,7 @@ def create_new_field_data_from_file_already_analyzed( @validate_call - def create_new_field_data_from_file_already_analyzed_with_http_info( + def create_field_data_from_analyzed_file_with_http_info( self, analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, _request_timeout: Union[ @@ -410,7 +421,7 @@ def create_new_field_data_from_file_already_analyzed_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[FieldDataSaveResults]: - """create_new_field_data_from_file_already_analyzed + """Take the analyzed results of the field data, modify it to your liking, then save it on the server. :param analyzed_results_from_field_data: @@ -437,7 +448,7 @@ def create_new_field_data_from_file_already_analyzed_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_file_already_analyzed_serialize( + _param = self._create_field_data_from_analyzed_file_serialize( analyzed_results_from_field_data=analyzed_results_from_field_data, _request_auth=_request_auth, _content_type=_content_type, @@ -461,7 +472,7 @@ def create_new_field_data_from_file_already_analyzed_with_http_info( @validate_call - def create_new_field_data_from_file_already_analyzed_without_preload_content( + def create_field_data_from_analyzed_file_without_preload_content( self, analyzed_results_from_field_data: Optional[AnalyzedResultsFromFieldData] = None, _request_timeout: Union[ @@ -477,7 +488,7 @@ def create_new_field_data_from_file_already_analyzed_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """create_new_field_data_from_file_already_analyzed + """Take the analyzed results of the field data, modify it to your liking, then save it on the server. :param analyzed_results_from_field_data: @@ -504,7 +515,7 @@ def create_new_field_data_from_file_already_analyzed_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_file_already_analyzed_serialize( + _param = self._create_field_data_from_analyzed_file_serialize( analyzed_results_from_field_data=analyzed_results_from_field_data, _request_auth=_request_auth, _content_type=_content_type, @@ -523,7 +534,7 @@ def create_new_field_data_from_file_already_analyzed_without_preload_content( return response_data.response - def _create_new_field_data_from_file_already_analyzed_serialize( + def _create_field_data_from_analyzed_file_serialize( self, analyzed_results_from_field_data, _request_auth, @@ -581,7 +592,7 @@ def _create_new_field_data_from_file_already_analyzed_serialize( return self.api_client.param_serialize( method='POST', - resource_path='/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed', + resource_path='/api/v1/fieldData/createFieldDataFromAnalyzedFile', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -598,9 +609,9 @@ def _create_new_field_data_from_file_already_analyzed_serialize( @validate_call - def create_new_field_data_from_simulation( + def delete_field_data( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -613,12 +624,12 @@ def create_new_field_data_from_simulation( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ExternalDataIdentifier: - """Create new field data from a simulation. + ) -> None: + """Delete the selected field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -641,8 +652,8 @@ def create_new_field_data_from_simulation( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_simulation_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._delete_field_data_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -650,7 +661,6 @@ def create_new_field_data_from_simulation( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ExternalDataIdentifier" } response_data = self.api_client.call_api( @@ -665,9 +675,9 @@ def create_new_field_data_from_simulation( @validate_call - def create_new_field_data_from_simulation_with_http_info( + def delete_field_data_with_http_info( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -680,12 +690,12 @@ def create_new_field_data_from_simulation_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[ExternalDataIdentifier]: - """Create new field data from a simulation. + ) -> ApiResponse[None]: + """Delete the selected field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -708,8 +718,8 @@ def create_new_field_data_from_simulation_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_simulation_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._delete_field_data_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -717,7 +727,6 @@ def create_new_field_data_from_simulation_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ExternalDataIdentifier" } response_data = self.api_client.call_api( @@ -732,9 +741,9 @@ def create_new_field_data_from_simulation_with_http_info( @validate_call - def create_new_field_data_from_simulation_without_preload_content( + def delete_field_data_without_preload_content( self, - field_data_db_operation_spec: Optional[FieldDataDBOperationSpec] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -748,11 +757,11 @@ def create_new_field_data_from_simulation_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Create new field data from a simulation. + """Delete the selected field data. - :param field_data_db_operation_spec: - :type field_data_db_operation_spec: FieldDataDBOperationSpec + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -775,8 +784,8 @@ def create_new_field_data_from_simulation_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._create_new_field_data_from_simulation_serialize( - field_data_db_operation_spec=field_data_db_operation_spec, + _param = self._delete_field_data_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -784,7 +793,6 @@ def create_new_field_data_from_simulation_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "ExternalDataIdentifier" } response_data = self.api_client.call_api( @@ -794,9 +802,9 @@ def create_new_field_data_from_simulation_without_preload_content( return response_data.response - def _create_new_field_data_from_simulation_serialize( + def _delete_field_data_serialize( self, - field_data_db_operation_spec, + field_data_id, _request_auth, _content_type, _headers, @@ -817,42 +825,23 @@ def _create_new_field_data_from_simulation_serialize( _body_params: Optional[bytes] = None # process the path parameters + if field_data_id is not None: + _path_params['fieldDataID'] = field_data_id # process the query parameters # process the header parameters # process the form parameters # process the body parameter - if field_data_db_operation_spec is not None: - _body_params = field_data_db_operation_spec - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'application/json' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='POST', - resource_path='/api/v1/fieldData/createFieldDataFromSimulation', + method='DELETE', + resource_path='/api/v1/fieldData/delete/{fieldDataID}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -869,9 +858,8 @@ def _create_new_field_data_from_simulation_serialize( @validate_call - def delete_field_data( + def get_all_field_data_ids( self, - body: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -884,12 +872,10 @@ def delete_field_data( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> None: - """Delete the selected field data. + ) -> List[FieldDataReference]: + """Get all of the ids used to identify, and retrieve field data. - :param body: - :type body: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -912,8 +898,7 @@ def delete_field_data( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_field_data_serialize( - body=body, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -921,6 +906,7 @@ def delete_field_data( ) _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FieldDataReference]" } response_data = self.api_client.call_api( @@ -935,9 +921,8 @@ def delete_field_data( @validate_call - def delete_field_data_with_http_info( + def get_all_field_data_ids_with_http_info( self, - body: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -950,12 +935,10 @@ def delete_field_data_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[None]: - """Delete the selected field data. + ) -> ApiResponse[List[FieldDataReference]]: + """Get all of the ids used to identify, and retrieve field data. - :param body: - :type body: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -978,8 +961,7 @@ def delete_field_data_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_field_data_serialize( - body=body, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -987,6 +969,7 @@ def delete_field_data_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FieldDataReference]" } response_data = self.api_client.call_api( @@ -1001,9 +984,8 @@ def delete_field_data_with_http_info( @validate_call - def delete_field_data_without_preload_content( + def get_all_field_data_ids_without_preload_content( self, - body: Optional[StrictStr] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1017,11 +999,9 @@ def delete_field_data_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """Delete the selected field data. + """Get all of the ids used to identify, and retrieve field data. - :param body: - :type body: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1044,8 +1024,7 @@ def delete_field_data_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._delete_field_data_serialize( - body=body, + _param = self._get_all_field_data_ids_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1053,6 +1032,7 @@ def delete_field_data_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { + '200': "List[FieldDataReference]" } response_data = self.api_client.call_api( @@ -1062,9 +1042,8 @@ def delete_field_data_without_preload_content( return response_data.response - def _delete_field_data_serialize( + def _get_all_field_data_ids_serialize( self, - body, _request_auth, _content_type, _headers, @@ -1089,32 +1068,23 @@ def _delete_field_data_serialize( # process the header parameters # process the form parameters # process the body parameter - if body is not None: - _body_params = body + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'text/plain' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/v1/fieldData', + method='GET', + resource_path='/api/v1/fieldData/IDs', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1131,10 +1101,9 @@ def _delete_field_data_serialize( @validate_call - def generate_field_data_estimate( + def get_field_data_shape_from_id( self, - file: Optional[Union[StrictBytes, StrictStr]] = None, - file_name: Optional[StrictStr] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1147,14 +1116,12 @@ def generate_field_data_estimate( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FieldDataFileOperationSpec: - """generate_field_data_estimate + ) -> FieldDataShape: + """Get the shape of the field data. That is it's size, origin, extent, and data identifiers. - :param file: - :type file: bytearray - :param file_name: - :type file_name: str + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1177,9 +1144,8 @@ def generate_field_data_estimate( :return: Returns the result object. """ # noqa: E501 - _param = self._generate_field_data_estimate_serialize( - file=file, - file_name=file_name, + _param = self._get_field_data_shape_from_id_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1187,7 +1153,7 @@ def generate_field_data_estimate( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataFileOperationSpec" + '200': "FieldDataShape" } response_data = self.api_client.call_api( @@ -1202,10 +1168,9 @@ def generate_field_data_estimate( @validate_call - def generate_field_data_estimate_with_http_info( + def get_field_data_shape_from_id_with_http_info( self, - file: Optional[Union[StrictBytes, StrictStr]] = None, - file_name: Optional[StrictStr] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1218,14 +1183,12 @@ def generate_field_data_estimate_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FieldDataFileOperationSpec]: - """generate_field_data_estimate + ) -> ApiResponse[FieldDataShape]: + """Get the shape of the field data. That is it's size, origin, extent, and data identifiers. - :param file: - :type file: bytearray - :param file_name: - :type file_name: str + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1248,9 +1211,8 @@ def generate_field_data_estimate_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._generate_field_data_estimate_serialize( - file=file, - file_name=file_name, + _param = self._get_field_data_shape_from_id_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1258,7 +1220,7 @@ def generate_field_data_estimate_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataFileOperationSpec" + '200': "FieldDataShape" } response_data = self.api_client.call_api( @@ -1273,10 +1235,9 @@ def generate_field_data_estimate_with_http_info( @validate_call - def generate_field_data_estimate_without_preload_content( + def get_field_data_shape_from_id_without_preload_content( self, - file: Optional[Union[StrictBytes, StrictStr]] = None, - file_name: Optional[StrictStr] = None, + field_data_id: StrictStr, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1290,13 +1251,11 @@ def generate_field_data_estimate_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """generate_field_data_estimate + """Get the shape of the field data. That is it's size, origin, extent, and data identifiers. - :param file: - :type file: bytearray - :param file_name: - :type file_name: str + :param field_data_id: (required) + :type field_data_id: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1319,9 +1278,8 @@ def generate_field_data_estimate_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._generate_field_data_estimate_serialize( - file=file, - file_name=file_name, + _param = self._get_field_data_shape_from_id_serialize( + field_data_id=field_data_id, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1329,7 +1287,7 @@ def generate_field_data_estimate_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataFileOperationSpec" + '200': "FieldDataShape" } response_data = self.api_client.call_api( @@ -1339,10 +1297,9 @@ def generate_field_data_estimate_without_preload_content( return response_data.response - def _generate_field_data_estimate_serialize( + def _get_field_data_shape_from_id_serialize( self, - file, - file_name, + field_data_id, _request_auth, _content_type, _headers, @@ -1363,13 +1320,11 @@ def _generate_field_data_estimate_serialize( _body_params: Optional[bytes] = None # process the path parameters + if field_data_id is not None: + _path_params['fieldDataID'] = field_data_id # process the query parameters # process the header parameters # process the form parameters - if file is not None: - _files['file'] = file - if file_name is not None: - _form_params.append(('fileName', file_name)) # process the body parameter @@ -1380,533 +1335,6 @@ def _generate_field_data_estimate_serialize( ] ) - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'multipart/form-data' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='POST', - resource_path='/api/v1/fieldData/analyzeFieldDataFromFile', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def get_all_field_data_ids( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FieldDataReferences: - """Get all of the ids used to identify, and retrieve field data. - - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_all_field_data_ids_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataReferences" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def get_all_field_data_ids_with_http_info( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FieldDataReferences]: - """Get all of the ids used to identify, and retrieve field data. - - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_all_field_data_ids_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataReferences" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def get_all_field_data_ids_without_preload_content( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """Get all of the ids used to identify, and retrieve field data. - - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_all_field_data_ids_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataReferences" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _get_all_field_data_ids_serialize( - self, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> Tuple: - - _host = None - - _collection_formats: Dict[str, str] = { - - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[str, str] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/fieldData/IDs', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def get_field_data_from_id( - self, - body: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FieldDataInfo: - """Get the field data from the selected field data ID. - - - :param body: - :type body: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_field_data_from_id_serialize( - body=body, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataInfo" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def get_field_data_from_id_with_http_info( - self, - body: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FieldDataInfo]: - """Get the field data from the selected field data ID. - - - :param body: - :type body: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_field_data_from_id_serialize( - body=body, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataInfo" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def get_field_data_from_id_without_preload_content( - self, - body: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """Get the field data from the selected field data ID. - - - :param body: - :type body: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._get_field_data_from_id_serialize( - body=body, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "FieldDataInfo" - - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _get_field_data_from_id_serialize( - self, - body, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> Tuple: - - _host = None - - _collection_formats: Dict[str, str] = { - - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[str, str] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - if body is not None: - _body_params = body - - - # set the HTTP header `Accept` - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'text/plain' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ @@ -1914,7 +1342,7 @@ def _get_field_data_from_id_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/v1/fieldData', + resource_path='/api/v1/fieldData/fieldDataShape/{fieldDataID}', path_params=_path_params, query_params=_query_params, header_params=_header_params, diff --git a/python-restclient/vcell_client/api/simulation_resource_api.py b/python-restclient/vcell_client/api/simulation_resource_api.py index 0cc5e36691..1d2f938779 100644 --- a/python-restclient/vcell_client/api/simulation_resource_api.py +++ b/python-restclient/vcell_client/api/simulation_resource_api.py @@ -111,8 +111,8 @@ def get_simulation_status( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -188,8 +188,8 @@ def get_simulation_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -265,8 +265,8 @@ def get_simulation_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "SimulationStatusPersistentRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -402,8 +402,8 @@ def start_simulation( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -471,8 +471,8 @@ def start_simulation_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -540,8 +540,8 @@ def start_simulation_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -667,8 +667,8 @@ def stop_simulation( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -736,8 +736,8 @@ def stop_simulation_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -805,8 +805,8 @@ def stop_simulation_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "List[StatusMessage]", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/api/users_resource_api.py b/python-restclient/vcell_client/api/users_resource_api.py index 77b2e2ff5f..4cf7621633 100644 --- a/python-restclient/vcell_client/api/users_resource_api.py +++ b/python-restclient/vcell_client/api/users_resource_api.py @@ -597,8 +597,8 @@ def get_legacy_api_token( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -662,8 +662,8 @@ def get_legacy_api_token_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -727,8 +727,8 @@ def get_legacy_api_token_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "AccesTokenRepresentationRecord", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -847,8 +847,8 @@ def get_mapped_user( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -912,8 +912,8 @@ def get_mapped_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -977,8 +977,8 @@ def get_mapped_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "UserIdentityJSONSafe", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -1607,8 +1607,8 @@ def map_user( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -1676,8 +1676,8 @@ def map_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -1745,8 +1745,8 @@ def map_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -2405,8 +2405,8 @@ def unmap_user( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -2474,8 +2474,8 @@ def unmap_user_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( @@ -2543,8 +2543,8 @@ def unmap_user_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "bool", - '403': None, - '401': None + '401': None, + '403': None } response_data = self.api_client.call_api( diff --git a/python-restclient/vcell_client/models/__init__.py b/python-restclient/vcell_client/models/__init__.py index 999a81c145..3132b55049 100644 --- a/python-restclient/vcell_client/models/__init__.py +++ b/python-restclient/vcell_client/models/__init__.py @@ -20,20 +20,14 @@ from vcell_client.models.batch_system_type import BatchSystemType from vcell_client.models.bio_model import BioModel from vcell_client.models.biomodel_ref import BiomodelRef -from vcell_client.models.cartesian_mesh import CartesianMesh -from vcell_client.models.coordinate import Coordinate from vcell_client.models.data_identifier import DataIdentifier from vcell_client.models.detailed_state import DetailedState from vcell_client.models.domain import Domain from vcell_client.models.extent import Extent from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec -from vcell_client.models.field_data_info import FieldDataInfo -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict -from vcell_client.models.field_data_references import FieldDataReferences +from vcell_client.models.field_data_reference import FieldDataReference from vcell_client.models.field_data_save_results import FieldDataSaveResults -from vcell_client.models.group_access import GroupAccess +from vcell_client.models.field_data_shape import FieldDataShape from vcell_client.models.hello_world_message import HelloWorldMessage from vcell_client.models.htc_job_id import HtcJobID from vcell_client.models.i_size import ISize @@ -51,7 +45,6 @@ from vcell_client.models.simulation_status_persistent_record import SimulationStatusPersistentRecord from vcell_client.models.status import Status from vcell_client.models.status_message import StatusMessage -from vcell_client.models.ucd_info import UCDInfo from vcell_client.models.user import User from vcell_client.models.user_identity_json_safe import UserIdentityJSONSafe from vcell_client.models.user_login_info_for_mapping import UserLoginInfoForMapping @@ -59,7 +52,3 @@ from vcell_client.models.vc_simulation_identifier import VCSimulationIdentifier from vcell_client.models.variable_domain import VariableDomain from vcell_client.models.variable_type import VariableType -from vcell_client.models.version import Version -from vcell_client.models.version_flag import VersionFlag -from vcell_client.models.versionable_type import VersionableType -from vcell_client.models.versionable_type_version import VersionableTypeVersion diff --git a/python-restclient/vcell_client/models/external_data_identifier.py b/python-restclient/vcell_client/models/external_data_identifier.py index 37d4661c9b..2b0d88dbb5 100644 --- a/python-restclient/vcell_client/models/external_data_identifier.py +++ b/python-restclient/vcell_client/models/external_data_identifier.py @@ -36,12 +36,11 @@ class ExternalDataIdentifier(BaseModel): key: Optional[KeyValue] = None owner: Optional[User] = None name: Optional[StrictStr] = None - i_d: Optional[StrictStr] = Field(default=None, alias="iD") job_index: Optional[StrictInt] = Field(default=None, alias="jobIndex") simulation_key: Optional[KeyValue] = Field(default=None, alias="simulationKey") parameter_scan_type: Optional[StrictBool] = Field(default=None, alias="parameterScanType") data_key: Optional[KeyValue] = Field(default=None, alias="dataKey") - __properties: ClassVar[List[str]] = ["key", "owner", "name", "iD", "jobIndex", "simulationKey", "parameterScanType", "dataKey"] + __properties: ClassVar[List[str]] = ["key", "owner", "name", "jobIndex", "simulationKey", "parameterScanType", "dataKey"] model_config = { "populate_by_name": True, @@ -111,7 +110,6 @@ def from_dict(cls, obj: Dict) -> Self: "key": KeyValue.from_dict(obj.get("key")) if obj.get("key") is not None else None, "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, "name": obj.get("name"), - "iD": obj.get("iD"), "jobIndex": obj.get("jobIndex"), "simulationKey": KeyValue.from_dict(obj.get("simulationKey")) if obj.get("simulationKey") is not None else None, "parameterScanType": obj.get("parameterScanType"), diff --git a/python-restclient/vcell_client/models/field_data_reference.py b/python-restclient/vcell_client/models/field_data_reference.py new file mode 100644 index 0000000000..e2baf64494 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_reference.py @@ -0,0 +1,110 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, StrictStr +from pydantic import Field +from vcell_client.models.external_data_identifier import ExternalDataIdentifier +from vcell_client.models.key_value import KeyValue +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataReference(BaseModel): + """ + FieldDataReference + """ # noqa: E501 + external_data_identifier: Optional[ExternalDataIdentifier] = Field(default=None, alias="externalDataIdentifier") + external_data_annotation: Optional[StrictStr] = Field(default=None, alias="externalDataAnnotation") + external_data_id_sim_ref: Optional[List[KeyValue]] = Field(default=None, alias="externalDataIDSimRef") + __properties: ClassVar[List[str]] = ["externalDataIdentifier", "externalDataAnnotation", "externalDataIDSimRef"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataReference from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of external_data_identifier + if self.external_data_identifier: + _dict['externalDataIdentifier'] = self.external_data_identifier.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in external_data_id_sim_ref (list) + _items = [] + if self.external_data_id_sim_ref: + for _item in self.external_data_id_sim_ref: + if _item: + _items.append(_item.to_dict()) + _dict['externalDataIDSimRef'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataReference from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataReference) in the input: " + _key) + + _obj = cls.model_validate({ + "externalDataIdentifier": ExternalDataIdentifier.from_dict(obj.get("externalDataIdentifier")) if obj.get("externalDataIdentifier") is not None else None, + "externalDataAnnotation": obj.get("externalDataAnnotation"), + "externalDataIDSimRef": [KeyValue.from_dict(_item) for _item in obj.get("externalDataIDSimRef")] if obj.get("externalDataIDSimRef") is not None else None + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/field_data_shape.py b/python-restclient/vcell_client/models/field_data_shape.py new file mode 100644 index 0000000000..5ac82d6283 --- /dev/null +++ b/python-restclient/vcell_client/models/field_data_shape.py @@ -0,0 +1,122 @@ +# coding: utf-8 + +""" + VCell API + + VCell API + + The version of the OpenAPI document: 1.0.1 + Contact: vcell_support@uchc.com + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + + +from typing import Any, ClassVar, Dict, List, Optional, Union +from pydantic import BaseModel, StrictFloat, StrictInt +from pydantic import Field +from vcell_client.models.data_identifier import DataIdentifier +from vcell_client.models.extent import Extent +from vcell_client.models.i_size import ISize +from vcell_client.models.origin import Origin +try: + from typing import Self +except ImportError: + from typing_extensions import Self + +class FieldDataShape(BaseModel): + """ + FieldDataShape + """ # noqa: E501 + extent: Optional[Extent] = None + origin: Optional[Origin] = None + isize: Optional[ISize] = None + data_identifier: Optional[List[DataIdentifier]] = Field(default=None, alias="dataIdentifier") + times: Optional[List[Union[StrictFloat, StrictInt]]] = None + __properties: ClassVar[List[str]] = ["extent", "origin", "isize", "dataIdentifier", "times"] + + model_config = { + "populate_by_name": True, + "validate_assignment": True + } + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of FieldDataShape from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + _dict = self.model_dump( + by_alias=True, + exclude={ + }, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of extent + if self.extent: + _dict['extent'] = self.extent.to_dict() + # override the default output from pydantic by calling `to_dict()` of origin + if self.origin: + _dict['origin'] = self.origin.to_dict() + # override the default output from pydantic by calling `to_dict()` of isize + if self.isize: + _dict['isize'] = self.isize.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in data_identifier (list) + _items = [] + if self.data_identifier: + for _item in self.data_identifier: + if _item: + _items.append(_item.to_dict()) + _dict['dataIdentifier'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Dict) -> Self: + """Create an instance of FieldDataShape from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + # raise errors for additional fields in the input + for _key in obj.keys(): + if _key not in cls.__properties: + raise ValueError("Error due to additional fields (not defined in FieldDataShape) in the input: " + _key) + + _obj = cls.model_validate({ + "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, + "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, + "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, + "dataIdentifier": [DataIdentifier.from_dict(_item) for _item in obj.get("dataIdentifier")] if obj.get("dataIdentifier") is not None else None, + "times": obj.get("times") + }) + return _obj + + diff --git a/python-restclient/vcell_client/models/i_size.py b/python-restclient/vcell_client/models/i_size.py index 284d188eee..251b108e6f 100644 --- a/python-restclient/vcell_client/models/i_size.py +++ b/python-restclient/vcell_client/models/i_size.py @@ -21,7 +21,6 @@ from typing import Any, ClassVar, Dict, List, Optional from pydantic import BaseModel, StrictInt -from pydantic import Field try: from typing import Self except ImportError: @@ -34,8 +33,7 @@ class ISize(BaseModel): x: Optional[StrictInt] = None y: Optional[StrictInt] = None z: Optional[StrictInt] = None - x_yz: Optional[StrictInt] = Field(default=None, alias="xYZ") - __properties: ClassVar[List[str]] = ["x", "y", "z", "xYZ"] + __properties: ClassVar[List[str]] = ["x", "y", "z"] model_config = { "populate_by_name": True, @@ -92,8 +90,7 @@ def from_dict(cls, obj: Dict) -> Self: _obj = cls.model_validate({ "x": obj.get("x"), "y": obj.get("y"), - "z": obj.get("z"), - "xYZ": obj.get("xYZ") + "z": obj.get("z") }) return _obj diff --git a/python-restclient/vcell_client/models/user.py b/python-restclient/vcell_client/models/user.py index dd783bc381..759c157d8d 100644 --- a/python-restclient/vcell_client/models/user.py +++ b/python-restclient/vcell_client/models/user.py @@ -34,10 +34,9 @@ class User(BaseModel): """ # noqa: E501 user_name: Optional[StrictStr] = Field(default=None, alias="userName") key: Optional[KeyValue] = None - i_d: Optional[KeyValue] = Field(default=None, alias="iD") name: Optional[StrictStr] = None test_account: Optional[StrictBool] = Field(default=None, alias="testAccount") - __properties: ClassVar[List[str]] = ["userName", "key", "iD", "name", "testAccount"] + __properties: ClassVar[List[str]] = ["userName", "key", "name", "testAccount"] model_config = { "populate_by_name": True, @@ -78,9 +77,6 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of key if self.key: _dict['key'] = self.key.to_dict() - # override the default output from pydantic by calling `to_dict()` of i_d - if self.i_d: - _dict['iD'] = self.i_d.to_dict() return _dict @classmethod @@ -100,7 +96,6 @@ def from_dict(cls, obj: Dict) -> Self: _obj = cls.model_validate({ "userName": obj.get("userName"), "key": KeyValue.from_dict(obj.get("key")) if obj.get("key") is not None else None, - "iD": KeyValue.from_dict(obj.get("iD")) if obj.get("iD") is not None else None, "name": obj.get("name"), "testAccount": obj.get("testAccount") }) diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 76763f2910..83638276d5 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -8,21 +8,15 @@ docs/BatchSystemType.md docs/BioModel.md docs/BioModelResourceApi.md docs/BiomodelRef.md -docs/CartesianMesh.md -docs/Coordinate.md docs/DataIdentifier.md docs/DetailedState.md docs/Domain.md docs/Extent.md docs/ExternalDataIdentifier.md -docs/FieldDataDBOperationSpec.md -docs/FieldDataFileOperationSpec.md -docs/FieldDataInfo.md -docs/FieldDataNoCopyConflict.md -docs/FieldDataReferences.md +docs/FieldDataReference.md docs/FieldDataResourceApi.md docs/FieldDataSaveResults.md -docs/GroupAccess.md +docs/FieldDataShape.md docs/HelloWorldApi.md docs/HelloWorldMessage.md docs/HtcJobID.md @@ -43,7 +37,6 @@ docs/SimulationResourceApi.md docs/SimulationStatusPersistentRecord.md docs/Status.md docs/StatusMessage.md -docs/UCDInfo.md docs/User.md docs/UserIdentityJSONSafe.md docs/UserLoginInfoForMapping.md @@ -52,10 +45,6 @@ docs/UsersResourceApi.md docs/VCSimulationIdentifier.md docs/VariableDomain.md docs/VariableType.md -docs/Version.md -docs/VersionFlag.md -docs/VersionableType.md -docs/VersionableTypeVersion.md src/main/AndroidManifest.xml src/main/java/org/vcell/restclient/ApiClient.java src/main/java/org/vcell/restclient/ApiException.java @@ -79,20 +68,14 @@ src/main/java/org/vcell/restclient/model/AnalyzedResultsFromFieldData.java src/main/java/org/vcell/restclient/model/BatchSystemType.java src/main/java/org/vcell/restclient/model/BioModel.java src/main/java/org/vcell/restclient/model/BiomodelRef.java -src/main/java/org/vcell/restclient/model/CartesianMesh.java -src/main/java/org/vcell/restclient/model/Coordinate.java src/main/java/org/vcell/restclient/model/DataIdentifier.java src/main/java/org/vcell/restclient/model/DetailedState.java src/main/java/org/vcell/restclient/model/Domain.java src/main/java/org/vcell/restclient/model/Extent.java src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java -src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java -src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java -src/main/java/org/vcell/restclient/model/FieldDataInfo.java -src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java -src/main/java/org/vcell/restclient/model/FieldDataReferences.java +src/main/java/org/vcell/restclient/model/FieldDataReference.java src/main/java/org/vcell/restclient/model/FieldDataSaveResults.java -src/main/java/org/vcell/restclient/model/GroupAccess.java +src/main/java/org/vcell/restclient/model/FieldDataShape.java src/main/java/org/vcell/restclient/model/HelloWorldMessage.java src/main/java/org/vcell/restclient/model/HtcJobID.java src/main/java/org/vcell/restclient/model/ISize.java @@ -110,7 +93,6 @@ src/main/java/org/vcell/restclient/model/SimulationQueueID.java src/main/java/org/vcell/restclient/model/SimulationStatusPersistentRecord.java src/main/java/org/vcell/restclient/model/Status.java src/main/java/org/vcell/restclient/model/StatusMessage.java -src/main/java/org/vcell/restclient/model/UCDInfo.java src/main/java/org/vcell/restclient/model/User.java src/main/java/org/vcell/restclient/model/UserIdentityJSONSafe.java src/main/java/org/vcell/restclient/model/UserLoginInfoForMapping.java @@ -118,9 +100,5 @@ src/main/java/org/vcell/restclient/model/UserRegistrationInfo.java src/main/java/org/vcell/restclient/model/VCSimulationIdentifier.java src/main/java/org/vcell/restclient/model/VariableDomain.java src/main/java/org/vcell/restclient/model/VariableType.java -src/main/java/org/vcell/restclient/model/Version.java -src/main/java/org/vcell/restclient/model/VersionFlag.java -src/main/java/org/vcell/restclient/model/VersionableType.java -src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java -src/test/java/org/vcell/restclient/model/DataIdentifierTest.java -src/test/java/org/vcell/restclient/model/DomainTest.java +src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java +src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java diff --git a/vcell-restclient/README.md b/vcell-restclient/README.md index 61d18b2541..5a04f9aa2b 100644 --- a/vcell-restclient/README.md +++ b/vcell-restclient/README.md @@ -113,20 +113,16 @@ Class | Method | HTTP request | Description *BioModelResourceApi* | [**getBiomodelByIdWithHttpInfo**](docs/BioModelResourceApi.md#getBiomodelByIdWithHttpInfo) | **GET** /api/v1/bioModel/{bioModelID} | Get BioModel information in JSON format by ID. *BioModelResourceApi* | [**uploadBioModel**](docs/BioModelResourceApi.md#uploadBioModel) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. *BioModelResourceApi* | [**uploadBioModelWithHttpInfo**](docs/BioModelResourceApi.md#uploadBioModelWithHttpInfo) | **POST** /api/v1/bioModel/upload_bioModel | Upload the BioModel to VCell database. Returns BioModel ID. -*FieldDataResourceApi* | [**copyFieldData**](docs/FieldDataResourceApi.md#copyFieldData) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. -*FieldDataResourceApi* | [**copyFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#copyFieldDataWithHttpInfo) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. -*FieldDataResourceApi* | [**createNewFieldDataFromFileAlreadyAnalyzed**](docs/FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | -*FieldDataResourceApi* | [**createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo**](docs/FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | -*FieldDataResourceApi* | [**createNewFieldDataFromSimulation**](docs/FieldDataResourceApi.md#createNewFieldDataFromSimulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. -*FieldDataResourceApi* | [**createNewFieldDataFromSimulationWithHttpInfo**](docs/FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. -*FieldDataResourceApi* | [**deleteFieldData**](docs/FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. -*FieldDataResourceApi* | [**deleteFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. -*FieldDataResourceApi* | [**generateFieldDataEstimate**](docs/FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | -*FieldDataResourceApi* | [**generateFieldDataEstimateWithHttpInfo**](docs/FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | +*FieldDataResourceApi* | [**analyzeFieldDataFile**](docs/FieldDataResourceApi.md#analyzeFieldDataFile) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. +*FieldDataResourceApi* | [**analyzeFieldDataFileWithHttpInfo**](docs/FieldDataResourceApi.md#analyzeFieldDataFileWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. +*FieldDataResourceApi* | [**createFieldDataFromAnalyzedFile**](docs/FieldDataResourceApi.md#createFieldDataFromAnalyzedFile) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. +*FieldDataResourceApi* | [**createFieldDataFromAnalyzedFileWithHttpInfo**](docs/FieldDataResourceApi.md#createFieldDataFromAnalyzedFileWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. +*FieldDataResourceApi* | [**deleteFieldData**](docs/FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. +*FieldDataResourceApi* | [**deleteFieldDataWithHttpInfo**](docs/FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. *FieldDataResourceApi* | [**getAllFieldDataIDs**](docs/FieldDataResourceApi.md#getAllFieldDataIDs) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. *FieldDataResourceApi* | [**getAllFieldDataIDsWithHttpInfo**](docs/FieldDataResourceApi.md#getAllFieldDataIDsWithHttpInfo) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. -*FieldDataResourceApi* | [**getFieldDataFromID**](docs/FieldDataResourceApi.md#getFieldDataFromID) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. -*FieldDataResourceApi* | [**getFieldDataFromIDWithHttpInfo**](docs/FieldDataResourceApi.md#getFieldDataFromIDWithHttpInfo) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. +*FieldDataResourceApi* | [**getFieldDataShapeFromID**](docs/FieldDataResourceApi.md#getFieldDataShapeFromID) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. +*FieldDataResourceApi* | [**getFieldDataShapeFromIDWithHttpInfo**](docs/FieldDataResourceApi.md#getFieldDataShapeFromIDWithHttpInfo) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. *HelloWorldApi* | [**getHelloWorld**](docs/HelloWorldApi.md#getHelloWorld) | **GET** /api/v1/helloworld | Get hello world message. *HelloWorldApi* | [**getHelloWorldWithHttpInfo**](docs/HelloWorldApi.md#getHelloWorldWithHttpInfo) | **GET** /api/v1/helloworld | Get hello world message. *PublicationResourceApi* | [**createPublication**](docs/PublicationResourceApi.md#createPublication) | **POST** /api/v1/publications | Create publication @@ -174,20 +170,14 @@ Class | Method | HTTP request | Description - [BatchSystemType](docs/BatchSystemType.md) - [BioModel](docs/BioModel.md) - [BiomodelRef](docs/BiomodelRef.md) - - [CartesianMesh](docs/CartesianMesh.md) - - [Coordinate](docs/Coordinate.md) - [DataIdentifier](docs/DataIdentifier.md) - [DetailedState](docs/DetailedState.md) - [Domain](docs/Domain.md) - [Extent](docs/Extent.md) - [ExternalDataIdentifier](docs/ExternalDataIdentifier.md) - - [FieldDataDBOperationSpec](docs/FieldDataDBOperationSpec.md) - - [FieldDataFileOperationSpec](docs/FieldDataFileOperationSpec.md) - - [FieldDataInfo](docs/FieldDataInfo.md) - - [FieldDataNoCopyConflict](docs/FieldDataNoCopyConflict.md) - - [FieldDataReferences](docs/FieldDataReferences.md) + - [FieldDataReference](docs/FieldDataReference.md) - [FieldDataSaveResults](docs/FieldDataSaveResults.md) - - [GroupAccess](docs/GroupAccess.md) + - [FieldDataShape](docs/FieldDataShape.md) - [HelloWorldMessage](docs/HelloWorldMessage.md) - [HtcJobID](docs/HtcJobID.md) - [ISize](docs/ISize.md) @@ -205,7 +195,6 @@ Class | Method | HTTP request | Description - [SimulationStatusPersistentRecord](docs/SimulationStatusPersistentRecord.md) - [Status](docs/Status.md) - [StatusMessage](docs/StatusMessage.md) - - [UCDInfo](docs/UCDInfo.md) - [User](docs/User.md) - [UserIdentityJSONSafe](docs/UserIdentityJSONSafe.md) - [UserLoginInfoForMapping](docs/UserLoginInfoForMapping.md) @@ -213,10 +202,6 @@ Class | Method | HTTP request | Description - [VCSimulationIdentifier](docs/VCSimulationIdentifier.md) - [VariableDomain](docs/VariableDomain.md) - [VariableType](docs/VariableType.md) - - [Version](docs/Version.md) - - [VersionFlag](docs/VersionFlag.md) - - [VersionableType](docs/VersionableType.md) - - [VersionableTypeVersion](docs/VersionableTypeVersion.md) diff --git a/vcell-restclient/api/openapi.yaml b/vcell-restclient/api/openapi.yaml index 42d466a7f5..37be006158 100644 --- a/vcell-restclient/api/openapi.yaml +++ b/vcell-restclient/api/openapi.yaml @@ -46,10 +46,10 @@ paths: schema: $ref: '#/components/schemas/SimulationStatusPersistentRecord' description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -77,10 +77,10 @@ paths: $ref: '#/components/schemas/StatusMessage' type: array description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -108,10 +108,10 @@ paths: $ref: '#/components/schemas/StatusMessage' type: array description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -149,10 +149,10 @@ paths: schema: type: string description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -202,41 +202,6 @@ paths: tags: - Bio Model Resource x-accepts: application/json - /api/v1/fieldData: - delete: - operationId: deleteFieldData - requestBody: - content: - text/plain: - schema: - type: string - responses: - "204": - description: No Content - summary: Delete the selected field data. - tags: - - Field Data Resource - x-content-type: text/plain - x-accepts: application/json - get: - operationId: getFieldDataFromID - requestBody: - content: - text/plain: - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataInfo' - description: OK - summary: Get the field data from the selected field data ID. - tags: - - Field Data Resource - x-content-type: text/plain - x-accepts: application/json /api/v1/fieldData/IDs: get: operationId: getAllFieldDataIDs @@ -245,89 +210,96 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/FieldDataReferences' + items: + $ref: '#/components/schemas/FieldDataReference' + type: array description: OK summary: "Get all of the ids used to identify, and retrieve field data." tags: - Field Data Resource x-accepts: application/json - /api/v1/fieldData/analyzeFieldDataFromFile: + /api/v1/fieldData/analyzeFieldDataFile: post: - operationId: generateFieldDataEstimate + operationId: analyzeFieldDataFile requestBody: content: multipart/form-data: schema: - $ref: '#/components/schemas/FieldDataFile' + $ref: '#/components/schemas/analyzeFieldDataFile_request' responses: "200": content: application/json: schema: - $ref: '#/components/schemas/FieldDataFileOperationSpec' + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' description: OK + summary: "Analyze the field data from the uploaded file. Filenames must be lowercase\ + \ alphanumeric, and can contain underscores." tags: - Field Data Resource x-content-type: multipart/form-data x-accepts: application/json - /api/v1/fieldData/copy: + /api/v1/fieldData/createFieldDataFromAnalyzedFile: post: - operationId: copyFieldData + operationId: createFieldDataFromAnalyzedFile requestBody: content: application/json: schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + $ref: '#/components/schemas/AnalyzedResultsFromFieldData' responses: "200": content: application/json: schema: - $ref: '#/components/schemas/FieldDataNoCopyConflict' + $ref: '#/components/schemas/FieldDataSaveResults' description: OK - summary: Copy an existing field data entry. + summary: "Take the analyzed results of the field data, modify it to your liking,\ + \ then save it on the server." tags: - Field Data Resource x-content-type: application/json x-accepts: application/json - /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed: - post: - operationId: createNewFieldDataFromFileAlreadyAnalyzed - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AnalyzedResultsFromFieldData' + /api/v1/fieldData/delete/{fieldDataID}: + delete: + operationId: deleteFieldData + parameters: + - explode: false + in: path + name: fieldDataID + required: true + schema: + type: string + style: simple responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataSaveResults' - description: OK + "204": + description: No Content + summary: Delete the selected field data. tags: - Field Data Resource - x-content-type: application/json x-accepts: application/json - /api/v1/fieldData/createFieldDataFromSimulation: - post: - operationId: createNewFieldDataFromSimulation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FieldDataDBOperationSpec' + /api/v1/fieldData/fieldDataShape/{fieldDataID}: + get: + operationId: getFieldDataShapeFromID + parameters: + - explode: false + in: path + name: fieldDataID + required: true + schema: + type: string + style: simple responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ExternalDataIdentifier' + $ref: '#/components/schemas/FieldDataShape' description: OK - summary: Create new field data from a simulation. + summary: "Get the shape of the field data. That is it's size, origin, extent,\ + \ and data identifiers." tags: - Field Data Resource - x-content-type: application/json x-accepts: application/json /api/v1/helloworld: get: @@ -449,10 +421,10 @@ paths: schema: $ref: '#/components/schemas/AccesTokenRepresentationRecord' description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -517,10 +489,10 @@ paths: schema: type: boolean description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -539,10 +511,10 @@ paths: schema: $ref: '#/components/schemas/UserIdentityJSONSafe' description: "Successful, returning the identity" - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -577,10 +549,10 @@ paths: description: "Successful, returning the identity" "409": description: "VCell Identity not mapped, userid already exists" - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -632,10 +604,10 @@ paths: description: magic link sent in email if appropriate "400": description: unable to process request - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -661,10 +633,10 @@ paths: schema: type: boolean description: OK - "403": - description: Not Allowed "401": description: Not Authorized + "403": + description: Not Allowed security: - openId: - user @@ -698,22 +670,21 @@ components: AnalyzedResultsFromFieldData: example: extent: - x: 0.8008281904610115 - "y": 6.027456183070403 - z: 1.4658129805029452 + x: 2.3021358869347655 + "y": 7.061401241503109 + z: 9.301444243932576 annotation: annotation times: - 6.027456183070403 - 6.027456183070403 origin: - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 + x: 1.4658129805029452 + "y": 5.962133916683182 + z: 5.637376656633329 isize: - x: 7 - xYZ: 2 - "y": 9 - z: 3 + x: 3 + "y": 2 + z: 4 name: name varNames: - varNames @@ -840,170 +811,6 @@ components: format: int32 type: integer type: object - CartesianMesh: - example: - iSize: - x: 7 - xYZ: 2 - "y": 9 - z: 3 - chomboMesh: true - uCDInfo: - numPointsXYZ: 7 - ucdGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - ucdMembraneQuads: - - - 7 - - 7 - - - 7 - - 7 - uCDGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - numVolumeNodesX: 3 - numVolumeNodesXY: 1 - numVolumeCells: 1 - reducedUCDGridNodesV: - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - uCDMembraneQuads: - - - 9 - - 9 - - - 9 - - 9 - numVolumeNodesY: 2 - numMembraneCells: 1 - numVolumeNodesZ: 4 - numVolumeElements: 5 - numMembraneRegions: 4 - outputFields: - - "" - - "" - sizeX: 9 - membraneRegionMapSubvolumesInOut: - key: "" - numVolumeRegions: 9 - membraneConnectivityOK: true - geometryDimension: 6 - numMembraneElements: 1 - compressedBytes: "" - volumeRegionMapSubvolume: - key: 7 - sizeY: 6 - sizeZ: 8 - properties: - compressedBytes: - format: binary - type: string - uCDInfo: - $ref: '#/components/schemas/UCDInfo' - geometryDimension: - format: int32 - type: integer - volumeRegionMapSubvolume: - additionalProperties: - format: int32 - type: integer - type: object - membraneRegionMapSubvolumesInOut: - additionalProperties: {} - type: object - numMembraneElements: - format: int32 - type: integer - numMembraneRegions: - format: int32 - type: integer - numVolumeElements: - format: int32 - type: integer - numVolumeRegions: - format: int32 - type: integer - iSize: - $ref: '#/components/schemas/ISize' - sizeX: - format: int32 - type: integer - sizeY: - format: int32 - type: integer - sizeZ: - format: int32 - type: integer - membraneConnectivityOK: - type: boolean - outputFields: - items: {} - type: array - chomboMesh: - type: boolean - type: object - Coordinate: - example: - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - properties: - x: - format: double - type: number - "y": - format: double - type: number - z: - format: double - type: number - type: object DataIdentifier: example: variableType: @@ -1013,7 +820,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 4 + type: 0 variableDomain: null legacyWarn: true visible: true @@ -1105,9 +912,9 @@ components: type: object Extent: example: - x: 0.8008281904610115 - "y": 6.027456183070403 - z: 1.4658129805029452 + x: 2.3021358869347655 + "y": 7.061401241503109 + z: 9.301444243932576 properties: x: format: double @@ -1130,8 +937,6 @@ components: owner: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -1141,7 +946,6 @@ components: value: 0.8008281904610115 jobIndex: 0 name: name - iD: iD key: value: 0.8008281904610115 parameterScanType: true @@ -1152,8 +956,6 @@ components: $ref: '#/components/schemas/User' name: type: string - iD: - type: string jobIndex: format: int32 type: integer @@ -1164,28 +966,13 @@ components: dataKey: $ref: '#/components/schemas/KeyValue' type: object - FieldDataDBOperationSpec: + FieldDataReference: example: - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - annotation: annotation - sourceNames: - - sourceNames - - sourceNames - bIncludeSimRefs: true - opType: 0 - specEDI: + externalDataAnnotation: externalDataAnnotation + externalDataIdentifier: owner: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -1195,373 +982,49 @@ components: value: 0.8008281904610115 jobIndex: 0 name: name - iD: iD key: value: 0.8008281904610115 parameterScanType: true - newExtDataIDName: newExtDataIDName - sourceOwner: - vType: - code: 1 - versionClass: "{}" - vType: 6 - bTopLevel: true - name: name - isTopLevel: true - typeName: typeName - vClass: "{}" - version: - date: 2022-03-10T00:00:00.000+00:00 - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - branchID: 9.301444243932576 - flag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionGroupAccess: - groupid: 5.962133916683182 - description: description - versionFlag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionName: versionName - annot: annot - versionDate: 2022-03-10T00:00:00.000+00:00 - versionKey: - value: 0.8008281904610115 - versionAnnot: versionAnnot - groupAccess: - groupid: 5.962133916683182 - description: description - versionBranchID: 5.637376656633329 - name: name - versionBranchPointRef: - value: 0.8008281904610115 - branchPointRefKey: - value: 0.8008281904610115 - versionOwner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 + externalDataIDSimRef: + - value: 0.8008281904610115 + - value: 0.8008281904610115 properties: - opType: - format: int32 - type: integer - specEDI: + externalDataIdentifier: $ref: '#/components/schemas/ExternalDataIdentifier' - owner: - $ref: '#/components/schemas/User' - newExtDataIDName: - type: string - annotation: + externalDataAnnotation: type: string - sourceNames: + externalDataIDSimRef: items: - type: string + $ref: '#/components/schemas/KeyValue' type: array - sourceOwner: - $ref: '#/components/schemas/VersionableTypeVersion' - bIncludeSimRefs: - type: boolean type: object - FieldDataFile: + FieldDataSaveResults: + example: + fieldDataName: fieldDataName + fieldDataID: fieldDataID properties: - file: - format: binary + fieldDataName: type: string - fileName: + fieldDataID: type: string type: object - FieldDataFileOperationSpec: + FieldDataShape: example: - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 extent: - x: 0.8008281904610115 - "y": 6.027456183070403 - z: 1.4658129805029452 - annotation: annotation - variableTypes: - - defaultUnits: defaultUnits - name: name - typeName: typeName - defaultLabel: defaultLabel - units: units - label: label - type: 4 - variableDomain: null - legacyWarn: true - - defaultUnits: defaultUnits - name: name - typeName: typeName - defaultLabel: defaultLabel - units: units - label: label - type: 4 - variableDomain: null - legacyWarn: true - doubleSpecData: - - - - 1.4658129805029452 - - 1.4658129805029452 - - - 1.4658129805029452 - - 1.4658129805029452 - - - - 1.4658129805029452 - - 1.4658129805029452 - - - 1.4658129805029452 - - 1.4658129805029452 - opType: 0 - specEDI: - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - origin: - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - varNames: - - varNames - - varNames - sourceOwner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - shortSpecData: - - - - 6 - - 6 - - - 6 - - 6 - - - - 6 - - 6 - - - 6 - - 6 - sourceSimParamScanJobIndex: 6 + x: 2.3021358869347655 + "y": 7.061401241503109 + z: 9.301444243932576 times: - - 9.018348186070783 - - 9.018348186070783 - fieldDataName: fieldDataName - sourceSimDataKey: - value: 0.8008281904610115 + - 6.027456183070403 + - 6.027456183070403 + origin: + x: 1.4658129805029452 + "y": 5.962133916683182 + z: 5.637376656633329 isize: - x: 7 - xYZ: 2 - "y": 9 - z: 3 - cartesianMesh: - iSize: - x: 7 - xYZ: 2 - "y": 9 - z: 3 - chomboMesh: true - uCDInfo: - numPointsXYZ: 7 - ucdGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - ucdMembraneQuads: - - - 7 - - 7 - - - 7 - - 7 - uCDGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - numVolumeNodesX: 3 - numVolumeNodesXY: 1 - numVolumeCells: 1 - reducedUCDGridNodesV: - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - uCDMembraneQuads: - - - 9 - - 9 - - - 9 - - 9 - numVolumeNodesY: 2 - numMembraneCells: 1 - numVolumeNodesZ: 4 - numVolumeElements: 5 - numMembraneRegions: 4 - outputFields: - - "" - - "" - sizeX: 9 - membraneRegionMapSubvolumesInOut: - key: "" - numVolumeRegions: 9 - membraneConnectivityOK: true - geometryDimension: 6 - numMembraneElements: 1 - compressedBytes: "" - volumeRegionMapSubvolume: - key: 7 - sizeY: 6 - sizeZ: 8 - properties: - opType: - format: int32 - type: integer - shortSpecData: - items: - items: - items: - type: integer - type: array - type: array - type: array - doubleSpecData: - items: - items: - items: - format: double - type: number - type: array - type: array - type: array - cartesianMesh: - $ref: '#/components/schemas/CartesianMesh' - specEDI: - $ref: '#/components/schemas/ExternalDataIdentifier' - varNames: - items: - type: string - type: array - variableTypes: - items: - $ref: '#/components/schemas/VariableType' - type: array - times: - items: - format: double - type: number - type: array - owner: - $ref: '#/components/schemas/User' - origin: - $ref: '#/components/schemas/Origin' - extent: - $ref: '#/components/schemas/Extent' - isize: - $ref: '#/components/schemas/ISize' - annotation: - type: string - sourceSimParamScanJobIndex: - format: int32 - type: integer - sourceSimDataKey: - $ref: '#/components/schemas/KeyValue' - sourceOwner: - $ref: '#/components/schemas/User' - fieldDataName: - type: string - type: object - FieldDataInfo: - example: - extent: - x: 0.8008281904610115 - "y": 6.027456183070403 - z: 1.4658129805029452 - times: - - 7.386281948385884 - - 7.386281948385884 - origin: - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - isize: - x: 7 - xYZ: 2 - "y": 9 - z: 3 + x: 3 + "y": 2 + z: 4 dataIdentifier: - variableType: defaultUnits: defaultUnits @@ -1570,7 +1033,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 4 + type: 0 variableDomain: null legacyWarn: true visible: true @@ -1587,7 +1050,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 4 + type: 0 variableDomain: null legacyWarn: true visible: true @@ -1614,123 +1077,6 @@ components: type: number type: array type: object - FieldDataNoCopyConflict: - example: - oldNameOldExtDataIDKeyHash: - key: - value: 0.8008281904610115 - oldNameNewIDHash: - key: - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - properties: - oldNameNewIDHash: - additionalProperties: - $ref: '#/components/schemas/ExternalDataIdentifier' - type: object - oldNameOldExtDataIDKeyHash: - additionalProperties: - $ref: '#/components/schemas/KeyValue' - type: object - type: object - FieldDataReferences: - example: - externalDataIdentifiers: - - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - dataKey: - value: 0.8008281904610115 - simulationKey: - value: 0.8008281904610115 - jobIndex: 0 - name: name - iD: iD - key: - value: 0.8008281904610115 - parameterScanType: true - externalDataAnnotations: - - externalDataAnnotations - - externalDataAnnotations - externalDataIDSimRefs: - key: - - value: 0.8008281904610115 - - value: 0.8008281904610115 - properties: - externalDataIdentifiers: - items: - $ref: '#/components/schemas/ExternalDataIdentifier' - type: array - externalDataAnnotations: - items: - type: string - type: array - externalDataIDSimRefs: - additionalProperties: - items: - $ref: '#/components/schemas/KeyValue' - type: array - type: object - type: object - FieldDataSaveResults: - example: - fieldDataName: fieldDataName - fieldDataID: fieldDataID - properties: - fieldDataName: - type: string - fieldDataID: - type: string - type: object - GroupAccess: - example: - groupid: 5.962133916683182 - description: description - properties: - groupid: - type: number - description: - type: string - type: object HelloWorldMessage: example: message: message @@ -1754,10 +1100,9 @@ components: type: object ISize: example: - x: 7 - xYZ: 2 - "y": 9 - z: 3 + x: 3 + "y": 2 + z: 4 properties: x: format: int32 @@ -1768,9 +1113,6 @@ components: z: format: int32 type: integer - xYZ: - format: int32 - type: integer type: object Identity: example: @@ -1835,9 +1177,9 @@ components: type: object Origin: example: - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 + x: 1.4658129805029452 + "y": 5.962133916683182 + z: 5.637376656633329 properties: x: format: double @@ -1999,8 +1341,6 @@ components: owner: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -2139,8 +1479,6 @@ components: owner: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -2170,145 +1508,10 @@ components: format: double type: number type: object - UCDInfo: - example: - numPointsXYZ: 7 - ucdGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - ucdMembraneQuads: - - - 7 - - 7 - - - 7 - - 7 - uCDGridNodes: - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - numVolumeNodesX: 3 - numVolumeNodesXY: 1 - numVolumeCells: 1 - reducedUCDGridNodesV: - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - - x: 5.962133916683182 - "y": 5.637376656633329 - z: 2.3021358869347655 - uCDMembraneQuads: - - - 9 - - 9 - - - 9 - - 9 - numVolumeNodesY: 2 - numMembraneCells: 1 - numVolumeNodesZ: 4 - properties: - ucdGridNodes: - items: - items: - items: - $ref: '#/components/schemas/Coordinate' - type: array - type: array - type: array - ucdMembraneQuads: - items: - items: - format: int32 - type: integer - type: array - type: array - reducedUCDGridNodesV: - items: - $ref: '#/components/schemas/Coordinate' - type: array - uCDGridNodes: - items: - items: - items: - $ref: '#/components/schemas/Coordinate' - type: array - type: array - type: array - uCDMembraneQuads: - items: - items: - format: int32 - type: integer - type: array - type: array - numVolumeNodesX: - format: int32 - type: integer - numVolumeNodesY: - format: int32 - type: integer - numVolumeNodesZ: - format: int32 - type: integer - numPointsXYZ: - format: int32 - type: integer - numVolumeNodesXY: - format: int32 - type: integer - numVolumeCells: - format: int32 - type: integer - numMembraneCells: - format: int32 - type: integer - type: object User: example: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -2317,8 +1520,6 @@ components: type: string key: $ref: '#/components/schemas/KeyValue' - iD: - $ref: '#/components/schemas/KeyValue' name: type: string testAccount: @@ -2377,8 +1578,6 @@ components: owner: testAccount: true name: name - iD: - value: 0.8008281904610115 userName: userName key: value: 0.8008281904610115 @@ -2411,7 +1610,7 @@ components: defaultLabel: defaultLabel units: units label: label - type: 4 + type: 0 variableDomain: null legacyWarn: true properties: @@ -2435,212 +1634,13 @@ components: typeName: type: string type: object - Version: - example: - date: 2022-03-10T00:00:00.000+00:00 - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - branchID: 9.301444243932576 - flag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionGroupAccess: - groupid: 5.962133916683182 - description: description - versionFlag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionName: versionName - annot: annot - versionDate: 2022-03-10T00:00:00.000+00:00 - versionKey: - value: 0.8008281904610115 - versionAnnot: versionAnnot - groupAccess: - groupid: 5.962133916683182 - description: description - versionBranchID: 5.637376656633329 - name: name - versionBranchPointRef: - value: 0.8008281904610115 - branchPointRefKey: - value: 0.8008281904610115 - versionOwner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - properties: - versionKey: - $ref: '#/components/schemas/KeyValue' - versionName: - type: string - versionOwner: - $ref: '#/components/schemas/User' - versionGroupAccess: - $ref: '#/components/schemas/GroupAccess' - versionBranchPointRef: - $ref: '#/components/schemas/KeyValue' - versionBranchID: - type: number - versionDate: - example: 2022-03-10 - format: date - type: string - versionFlag: - $ref: '#/components/schemas/VersionFlag' - versionAnnot: - type: string - annot: - type: string - branchID: - type: number - branchPointRefKey: - $ref: '#/components/schemas/KeyValue' - date: - example: 2022-03-10 - format: date - type: string - flag: - $ref: '#/components/schemas/VersionFlag' - groupAccess: - $ref: '#/components/schemas/GroupAccess' - name: - type: string - owner: - $ref: '#/components/schemas/User' - type: object - VersionFlag: - example: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - properties: - versionFlag: - format: int32 - type: integer - intValue: - format: int32 - type: integer - archived: - type: boolean - current: - type: boolean - published: - type: boolean - type: object - VersionableType: - example: - code: 1 - versionClass: "{}" - vType: 6 - bTopLevel: true - name: name - isTopLevel: true - typeName: typeName - vClass: "{}" + analyzeFieldDataFile_request: properties: - vType: - format: int32 - type: integer - name: + file: + format: binary type: string - vClass: - type: object - bTopLevel: - type: boolean - code: - format: int32 - type: integer - isTopLevel: - type: boolean - typeName: + fileName: type: string - versionClass: - type: object - type: object - VersionableTypeVersion: - example: - vType: - code: 1 - versionClass: "{}" - vType: 6 - bTopLevel: true - name: name - isTopLevel: true - typeName: typeName - vClass: "{}" - version: - date: 2022-03-10T00:00:00.000+00:00 - owner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - branchID: 9.301444243932576 - flag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionGroupAccess: - groupid: 5.962133916683182 - description: description - versionFlag: - archived: true - current: true - intValue: 7 - versionFlag: 2 - published: true - versionName: versionName - annot: annot - versionDate: 2022-03-10T00:00:00.000+00:00 - versionKey: - value: 0.8008281904610115 - versionAnnot: versionAnnot - groupAccess: - groupid: 5.962133916683182 - description: description - versionBranchID: 5.637376656633329 - name: name - versionBranchPointRef: - value: 0.8008281904610115 - branchPointRefKey: - value: 0.8008281904610115 - versionOwner: - testAccount: true - name: name - iD: - value: 0.8008281904610115 - userName: userName - key: - value: 0.8008281904610115 - properties: - vType: - $ref: '#/components/schemas/VersionableType' - version: - $ref: '#/components/schemas/Version' type: object securitySchemes: openId: diff --git a/vcell-restclient/docs/BioModelResourceApi.md b/vcell-restclient/docs/BioModelResourceApi.md index c8041e9297..b2569706e5 100644 --- a/vcell-restclient/docs/BioModelResourceApi.md +++ b/vcell-restclient/docs/BioModelResourceApi.md @@ -337,8 +337,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## uploadBioModelWithHttpInfo @@ -407,6 +407,6 @@ ApiResponse<**String**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | diff --git a/vcell-restclient/docs/ExternalDataIdentifier.md b/vcell-restclient/docs/ExternalDataIdentifier.md index 72587415ef..8b5ec63a51 100644 --- a/vcell-restclient/docs/ExternalDataIdentifier.md +++ b/vcell-restclient/docs/ExternalDataIdentifier.md @@ -10,7 +10,6 @@ |**key** | [**KeyValue**](KeyValue.md) | | [optional] | |**owner** | [**User**](User.md) | | [optional] | |**name** | **String** | | [optional] | -|**iD** | **String** | | [optional] | |**jobIndex** | **Integer** | | [optional] | |**simulationKey** | [**KeyValue**](KeyValue.md) | | [optional] | |**parameterScanType** | **Boolean** | | [optional] | diff --git a/vcell-restclient/docs/FieldDataReference.md b/vcell-restclient/docs/FieldDataReference.md new file mode 100644 index 0000000000..e836868f6b --- /dev/null +++ b/vcell-restclient/docs/FieldDataReference.md @@ -0,0 +1,15 @@ + + +# FieldDataReference + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**externalDataIdentifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | +|**externalDataAnnotation** | **String** | | [optional] | +|**externalDataIDSimRef** | [**List<KeyValue>**](KeyValue.md) | | [optional] | + + + diff --git a/vcell-restclient/docs/FieldDataResourceApi.md b/vcell-restclient/docs/FieldDataResourceApi.md index 494855dbce..aa5dea000a 100644 --- a/vcell-restclient/docs/FieldDataResourceApi.md +++ b/vcell-restclient/docs/FieldDataResourceApi.md @@ -4,28 +4,24 @@ All URIs are relative to *https://vcell-dev.cam.uchc.edu* | Method | HTTP request | Description | |------------- | ------------- | -------------| -| [**copyFieldData**](FieldDataResourceApi.md#copyFieldData) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. | -| [**copyFieldDataWithHttpInfo**](FieldDataResourceApi.md#copyFieldDataWithHttpInfo) | **POST** /api/v1/fieldData/copy | Copy an existing field data entry. | -| [**createNewFieldDataFromFileAlreadyAnalyzed**](FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzed) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | | -| [**createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo**](FieldDataResourceApi.md#createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed | | -| [**createNewFieldDataFromSimulation**](FieldDataResourceApi.md#createNewFieldDataFromSimulation) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. | -| [**createNewFieldDataFromSimulationWithHttpInfo**](FieldDataResourceApi.md#createNewFieldDataFromSimulationWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromSimulation | Create new field data from a simulation. | -| [**deleteFieldData**](FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData | Delete the selected field data. | -| [**deleteFieldDataWithHttpInfo**](FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData | Delete the selected field data. | -| [**generateFieldDataEstimate**](FieldDataResourceApi.md#generateFieldDataEstimate) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | | -| [**generateFieldDataEstimateWithHttpInfo**](FieldDataResourceApi.md#generateFieldDataEstimateWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFromFile | | +| [**analyzeFieldDataFile**](FieldDataResourceApi.md#analyzeFieldDataFile) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. | +| [**analyzeFieldDataFileWithHttpInfo**](FieldDataResourceApi.md#analyzeFieldDataFileWithHttpInfo) | **POST** /api/v1/fieldData/analyzeFieldDataFile | Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. | +| [**createFieldDataFromAnalyzedFile**](FieldDataResourceApi.md#createFieldDataFromAnalyzedFile) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. | +| [**createFieldDataFromAnalyzedFileWithHttpInfo**](FieldDataResourceApi.md#createFieldDataFromAnalyzedFileWithHttpInfo) | **POST** /api/v1/fieldData/createFieldDataFromAnalyzedFile | Take the analyzed results of the field data, modify it to your liking, then save it on the server. | +| [**deleteFieldData**](FieldDataResourceApi.md#deleteFieldData) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. | +| [**deleteFieldDataWithHttpInfo**](FieldDataResourceApi.md#deleteFieldDataWithHttpInfo) | **DELETE** /api/v1/fieldData/delete/{fieldDataID} | Delete the selected field data. | | [**getAllFieldDataIDs**](FieldDataResourceApi.md#getAllFieldDataIDs) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. | | [**getAllFieldDataIDsWithHttpInfo**](FieldDataResourceApi.md#getAllFieldDataIDsWithHttpInfo) | **GET** /api/v1/fieldData/IDs | Get all of the ids used to identify, and retrieve field data. | -| [**getFieldDataFromID**](FieldDataResourceApi.md#getFieldDataFromID) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. | -| [**getFieldDataFromIDWithHttpInfo**](FieldDataResourceApi.md#getFieldDataFromIDWithHttpInfo) | **GET** /api/v1/fieldData | Get the field data from the selected field data ID. | +| [**getFieldDataShapeFromID**](FieldDataResourceApi.md#getFieldDataShapeFromID) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. | +| [**getFieldDataShapeFromIDWithHttpInfo**](FieldDataResourceApi.md#getFieldDataShapeFromIDWithHttpInfo) | **GET** /api/v1/fieldData/fieldDataShape/{fieldDataID} | Get the shape of the field data. That is it's size, origin, extent, and data identifiers. | -## copyFieldData +## analyzeFieldDataFile -> FieldDataNoCopyConflict copyFieldData(fieldDataDBOperationSpec) +> AnalyzedResultsFromFieldData analyzeFieldDataFile(_file, fileName) -Copy an existing field data entry. +Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. ### Example @@ -43,12 +39,13 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + File _file = new File("/path/to/file"); // File | + String fileName = "fileName_example"; // String | try { - FieldDataNoCopyConflict result = apiInstance.copyFieldData(fieldDataDBOperationSpec); + AnalyzedResultsFromFieldData result = apiInstance.analyzeFieldDataFile(_file, fileName); System.out.println(result); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#copyFieldData"); + System.err.println("Exception when calling FieldDataResourceApi#analyzeFieldDataFile"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); @@ -63,11 +60,12 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | +| **_file** | **File**| | [optional] | +| **fileName** | **String**| | [optional] | ### Return type -[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md) +[**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md) ### Authorization @@ -76,7 +74,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: application/json +- **Content-Type**: multipart/form-data - **Accept**: application/json ### HTTP response details @@ -84,11 +82,11 @@ No authorization required |-------------|-------------|------------------| | **200** | OK | - | -## copyFieldDataWithHttpInfo +## analyzeFieldDataFileWithHttpInfo -> ApiResponse copyFieldData copyFieldDataWithHttpInfo(fieldDataDBOperationSpec) +> ApiResponse analyzeFieldDataFile analyzeFieldDataFileWithHttpInfo(_file, fileName) -Copy an existing field data entry. +Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. ### Example @@ -107,14 +105,15 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | + File _file = new File("/path/to/file"); // File | + String fileName = "fileName_example"; // String | try { - ApiResponse response = apiInstance.copyFieldDataWithHttpInfo(fieldDataDBOperationSpec); + ApiResponse response = apiInstance.analyzeFieldDataFileWithHttpInfo(_file, fileName); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); System.out.println("Response body: " + response.getData()); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#copyFieldData"); + System.err.println("Exception when calling FieldDataResourceApi#analyzeFieldDataFile"); System.err.println("Status code: " + e.getCode()); System.err.println("Response headers: " + e.getResponseHeaders()); System.err.println("Reason: " + e.getResponseBody()); @@ -129,11 +128,12 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | +| **_file** | **File**| | [optional] | +| **fileName** | **String**| | [optional] | ### Return type -ApiResponse<[**FieldDataNoCopyConflict**](FieldDataNoCopyConflict.md)> +ApiResponse<[**AnalyzedResultsFromFieldData**](AnalyzedResultsFromFieldData.md)> ### Authorization @@ -142,7 +142,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: application/json +- **Content-Type**: multipart/form-data - **Accept**: application/json ### HTTP response details @@ -151,11 +151,11 @@ No authorization required | **200** | OK | - | -## createNewFieldDataFromFileAlreadyAnalyzed - -> FieldDataSaveResults createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData) +## createFieldDataFromAnalyzedFile +> FieldDataSaveResults createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData) +Take the analyzed results of the field data, modify it to your liking, then save it on the server. ### Example @@ -175,10 +175,10 @@ public class Example { FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); AnalyzedResultsFromFieldData analyzedResultsFromFieldData = new AnalyzedResultsFromFieldData(); // AnalyzedResultsFromFieldData | try { - FieldDataSaveResults result = apiInstance.createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); + FieldDataSaveResults result = apiInstance.createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData); System.out.println(result); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromFileAlreadyAnalyzed"); + System.err.println("Exception when calling FieldDataResourceApi#createFieldDataFromAnalyzedFile"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); @@ -214,11 +214,11 @@ No authorization required |-------------|-------------|------------------| | **200** | OK | - | -## createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo - -> ApiResponse createNewFieldDataFromFileAlreadyAnalyzed createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData) +## createFieldDataFromAnalyzedFileWithHttpInfo +> ApiResponse createFieldDataFromAnalyzedFile createFieldDataFromAnalyzedFileWithHttpInfo(analyzedResultsFromFieldData) +Take the analyzed results of the field data, modify it to your liking, then save it on the server. ### Example @@ -239,12 +239,12 @@ public class Example { FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); AnalyzedResultsFromFieldData analyzedResultsFromFieldData = new AnalyzedResultsFromFieldData(); // AnalyzedResultsFromFieldData | try { - ApiResponse response = apiInstance.createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData); + ApiResponse response = apiInstance.createFieldDataFromAnalyzedFileWithHttpInfo(analyzedResultsFromFieldData); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); System.out.println("Response body: " + response.getData()); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromFileAlreadyAnalyzed"); + System.err.println("Exception when calling FieldDataResourceApi#createFieldDataFromAnalyzedFile"); System.err.println("Status code: " + e.getCode()); System.err.println("Response headers: " + e.getResponseHeaders()); System.err.println("Reason: " + e.getResponseBody()); @@ -281,139 +281,9 @@ No authorization required | **200** | OK | - | -## createNewFieldDataFromSimulation - -> ExternalDataIdentifier createNewFieldDataFromSimulation(fieldDataDBOperationSpec) - -Create new field data from a simulation. - -### Example - -```java -// Import classes: -import org.vcell.restclient.ApiClient; -import org.vcell.restclient.ApiException; -import org.vcell.restclient.Configuration; -import org.vcell.restclient.models.*; -import org.vcell.restclient.api.FieldDataResourceApi; - -public class Example { - public static void main(String[] args) { - ApiClient defaultClient = Configuration.getDefaultApiClient(); - defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); - - FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | - try { - ExternalDataIdentifier result = apiInstance.createNewFieldDataFromSimulation(fieldDataDBOperationSpec); - System.out.println(result); - } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromSimulation"); - System.err.println("Status code: " + e.getCode()); - System.err.println("Reason: " + e.getResponseBody()); - System.err.println("Response headers: " + e.getResponseHeaders()); - e.printStackTrace(); - } - } -} -``` - -### Parameters - - -| Name | Type | Description | Notes | -|------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | - -### Return type - -[**ExternalDataIdentifier**](ExternalDataIdentifier.md) - - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **200** | OK | - | - -## createNewFieldDataFromSimulationWithHttpInfo - -> ApiResponse createNewFieldDataFromSimulation createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec) - -Create new field data from a simulation. - -### Example - -```java -// Import classes: -import org.vcell.restclient.ApiClient; -import org.vcell.restclient.ApiException; -import org.vcell.restclient.ApiResponse; -import org.vcell.restclient.Configuration; -import org.vcell.restclient.models.*; -import org.vcell.restclient.api.FieldDataResourceApi; - -public class Example { - public static void main(String[] args) { - ApiClient defaultClient = Configuration.getDefaultApiClient(); - defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); - - FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - FieldDataDBOperationSpec fieldDataDBOperationSpec = new FieldDataDBOperationSpec(); // FieldDataDBOperationSpec | - try { - ApiResponse response = apiInstance.createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec); - System.out.println("Status code: " + response.getStatusCode()); - System.out.println("Response headers: " + response.getHeaders()); - System.out.println("Response body: " + response.getData()); - } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#createNewFieldDataFromSimulation"); - System.err.println("Status code: " + e.getCode()); - System.err.println("Response headers: " + e.getResponseHeaders()); - System.err.println("Reason: " + e.getResponseBody()); - e.printStackTrace(); - } - } -} -``` - -### Parameters - - -| Name | Type | Description | Notes | -|------------- | ------------- | ------------- | -------------| -| **fieldDataDBOperationSpec** | [**FieldDataDBOperationSpec**](FieldDataDBOperationSpec.md)| | [optional] | - -### Return type - -ApiResponse<[**ExternalDataIdentifier**](ExternalDataIdentifier.md)> - - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **200** | OK | - | - - ## deleteFieldData -> void deleteFieldData(body) +> void deleteFieldData(fieldDataID) Delete the selected field data. @@ -433,9 +303,9 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - String body = "body_example"; // String | + String fieldDataID = "fieldDataID_example"; // String | try { - apiInstance.deleteFieldData(body); + apiInstance.deleteFieldData(fieldDataID); } catch (ApiException e) { System.err.println("Exception when calling FieldDataResourceApi#deleteFieldData"); System.err.println("Status code: " + e.getCode()); @@ -452,7 +322,7 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **body** | **String**| | [optional] | +| **fieldDataID** | **String**| | | ### Return type @@ -465,7 +335,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: text/plain +- **Content-Type**: Not defined - **Accept**: Not defined ### HTTP response details @@ -475,7 +345,7 @@ No authorization required ## deleteFieldDataWithHttpInfo -> ApiResponse deleteFieldData deleteFieldDataWithHttpInfo(body) +> ApiResponse deleteFieldData deleteFieldDataWithHttpInfo(fieldDataID) Delete the selected field data. @@ -496,9 +366,9 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - String body = "body_example"; // String | + String fieldDataID = "fieldDataID_example"; // String | try { - ApiResponse response = apiInstance.deleteFieldDataWithHttpInfo(body); + ApiResponse response = apiInstance.deleteFieldDataWithHttpInfo(fieldDataID); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); } catch (ApiException e) { @@ -517,7 +387,7 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **body** | **String**| | [optional] | +| **fieldDataID** | **String**| | | ### Return type @@ -530,7 +400,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: text/plain +- **Content-Type**: Not defined - **Accept**: Not defined ### HTTP response details @@ -539,143 +409,9 @@ No authorization required | **204** | No Content | - | -## generateFieldDataEstimate - -> FieldDataFileOperationSpec generateFieldDataEstimate(_file, fileName) - - - -### Example - -```java -// Import classes: -import org.vcell.restclient.ApiClient; -import org.vcell.restclient.ApiException; -import org.vcell.restclient.Configuration; -import org.vcell.restclient.models.*; -import org.vcell.restclient.api.FieldDataResourceApi; - -public class Example { - public static void main(String[] args) { - ApiClient defaultClient = Configuration.getDefaultApiClient(); - defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); - - FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - File _file = new File("/path/to/file"); // File | - String fileName = "fileName_example"; // String | - try { - FieldDataFileOperationSpec result = apiInstance.generateFieldDataEstimate(_file, fileName); - System.out.println(result); - } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#generateFieldDataEstimate"); - System.err.println("Status code: " + e.getCode()); - System.err.println("Reason: " + e.getResponseBody()); - System.err.println("Response headers: " + e.getResponseHeaders()); - e.printStackTrace(); - } - } -} -``` - -### Parameters - - -| Name | Type | Description | Notes | -|------------- | ------------- | ------------- | -------------| -| **_file** | **File**| | [optional] | -| **fileName** | **String**| | [optional] | - -### Return type - -[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md) - - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: multipart/form-data -- **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **200** | OK | - | - -## generateFieldDataEstimateWithHttpInfo - -> ApiResponse generateFieldDataEstimate generateFieldDataEstimateWithHttpInfo(_file, fileName) - - - -### Example - -```java -// Import classes: -import org.vcell.restclient.ApiClient; -import org.vcell.restclient.ApiException; -import org.vcell.restclient.ApiResponse; -import org.vcell.restclient.Configuration; -import org.vcell.restclient.models.*; -import org.vcell.restclient.api.FieldDataResourceApi; - -public class Example { - public static void main(String[] args) { - ApiClient defaultClient = Configuration.getDefaultApiClient(); - defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); - - FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - File _file = new File("/path/to/file"); // File | - String fileName = "fileName_example"; // String | - try { - ApiResponse response = apiInstance.generateFieldDataEstimateWithHttpInfo(_file, fileName); - System.out.println("Status code: " + response.getStatusCode()); - System.out.println("Response headers: " + response.getHeaders()); - System.out.println("Response body: " + response.getData()); - } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#generateFieldDataEstimate"); - System.err.println("Status code: " + e.getCode()); - System.err.println("Response headers: " + e.getResponseHeaders()); - System.err.println("Reason: " + e.getResponseBody()); - e.printStackTrace(); - } - } -} -``` - -### Parameters - - -| Name | Type | Description | Notes | -|------------- | ------------- | ------------- | -------------| -| **_file** | **File**| | [optional] | -| **fileName** | **String**| | [optional] | - -### Return type - -ApiResponse<[**FieldDataFileOperationSpec**](FieldDataFileOperationSpec.md)> - - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: multipart/form-data -- **Accept**: application/json - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **200** | OK | - | - - ## getAllFieldDataIDs -> FieldDataReferences getAllFieldDataIDs() +> List getAllFieldDataIDs() Get all of the ids used to identify, and retrieve field data. @@ -696,7 +432,7 @@ public class Example { FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); try { - FieldDataReferences result = apiInstance.getAllFieldDataIDs(); + List result = apiInstance.getAllFieldDataIDs(); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling FieldDataResourceApi#getAllFieldDataIDs"); @@ -715,7 +451,7 @@ This endpoint does not need any parameter. ### Return type -[**FieldDataReferences**](FieldDataReferences.md) +[**List<FieldDataReference>**](FieldDataReference.md) ### Authorization @@ -734,7 +470,7 @@ No authorization required ## getAllFieldDataIDsWithHttpInfo -> ApiResponse getAllFieldDataIDs getAllFieldDataIDsWithHttpInfo() +> ApiResponse> getAllFieldDataIDs getAllFieldDataIDsWithHttpInfo() Get all of the ids used to identify, and retrieve field data. @@ -756,7 +492,7 @@ public class Example { FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); try { - ApiResponse response = apiInstance.getAllFieldDataIDsWithHttpInfo(); + ApiResponse> response = apiInstance.getAllFieldDataIDsWithHttpInfo(); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); System.out.println("Response body: " + response.getData()); @@ -777,7 +513,7 @@ This endpoint does not need any parameter. ### Return type -ApiResponse<[**FieldDataReferences**](FieldDataReferences.md)> +ApiResponse<[**List<FieldDataReference>**](FieldDataReference.md)> ### Authorization @@ -795,11 +531,11 @@ No authorization required | **200** | OK | - | -## getFieldDataFromID +## getFieldDataShapeFromID -> FieldDataInfo getFieldDataFromID(body) +> FieldDataShape getFieldDataShapeFromID(fieldDataID) -Get the field data from the selected field data ID. +Get the shape of the field data. That is it's size, origin, extent, and data identifiers. ### Example @@ -817,12 +553,12 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - String body = "body_example"; // String | + String fieldDataID = "fieldDataID_example"; // String | try { - FieldDataInfo result = apiInstance.getFieldDataFromID(body); + FieldDataShape result = apiInstance.getFieldDataShapeFromID(fieldDataID); System.out.println(result); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#getFieldDataFromID"); + System.err.println("Exception when calling FieldDataResourceApi#getFieldDataShapeFromID"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); @@ -837,11 +573,11 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **body** | **String**| | [optional] | +| **fieldDataID** | **String**| | | ### Return type -[**FieldDataInfo**](FieldDataInfo.md) +[**FieldDataShape**](FieldDataShape.md) ### Authorization @@ -850,7 +586,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: text/plain +- **Content-Type**: Not defined - **Accept**: application/json ### HTTP response details @@ -858,11 +594,11 @@ No authorization required |-------------|-------------|------------------| | **200** | OK | - | -## getFieldDataFromIDWithHttpInfo +## getFieldDataShapeFromIDWithHttpInfo -> ApiResponse getFieldDataFromID getFieldDataFromIDWithHttpInfo(body) +> ApiResponse getFieldDataShapeFromID getFieldDataShapeFromIDWithHttpInfo(fieldDataID) -Get the field data from the selected field data ID. +Get the shape of the field data. That is it's size, origin, extent, and data identifiers. ### Example @@ -881,14 +617,14 @@ public class Example { defaultClient.setBasePath("https://vcell-dev.cam.uchc.edu"); FieldDataResourceApi apiInstance = new FieldDataResourceApi(defaultClient); - String body = "body_example"; // String | + String fieldDataID = "fieldDataID_example"; // String | try { - ApiResponse response = apiInstance.getFieldDataFromIDWithHttpInfo(body); + ApiResponse response = apiInstance.getFieldDataShapeFromIDWithHttpInfo(fieldDataID); System.out.println("Status code: " + response.getStatusCode()); System.out.println("Response headers: " + response.getHeaders()); System.out.println("Response body: " + response.getData()); } catch (ApiException e) { - System.err.println("Exception when calling FieldDataResourceApi#getFieldDataFromID"); + System.err.println("Exception when calling FieldDataResourceApi#getFieldDataShapeFromID"); System.err.println("Status code: " + e.getCode()); System.err.println("Response headers: " + e.getResponseHeaders()); System.err.println("Reason: " + e.getResponseBody()); @@ -903,11 +639,11 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **body** | **String**| | [optional] | +| **fieldDataID** | **String**| | | ### Return type -ApiResponse<[**FieldDataInfo**](FieldDataInfo.md)> +ApiResponse<[**FieldDataShape**](FieldDataShape.md)> ### Authorization @@ -916,7 +652,7 @@ No authorization required ### HTTP request headers -- **Content-Type**: text/plain +- **Content-Type**: Not defined - **Accept**: application/json ### HTTP response details diff --git a/vcell-restclient/docs/FieldDataShape.md b/vcell-restclient/docs/FieldDataShape.md new file mode 100644 index 0000000000..84902d0ac1 --- /dev/null +++ b/vcell-restclient/docs/FieldDataShape.md @@ -0,0 +1,17 @@ + + +# FieldDataShape + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**extent** | [**Extent**](Extent.md) | | [optional] | +|**origin** | [**Origin**](Origin.md) | | [optional] | +|**isize** | [**ISize**](ISize.md) | | [optional] | +|**dataIdentifier** | [**List<DataIdentifier>**](DataIdentifier.md) | | [optional] | +|**times** | **List<Double>** | | [optional] | + + + diff --git a/vcell-restclient/docs/ISize.md b/vcell-restclient/docs/ISize.md index a093a715c8..66a2ce5658 100644 --- a/vcell-restclient/docs/ISize.md +++ b/vcell-restclient/docs/ISize.md @@ -10,7 +10,6 @@ |**x** | **Integer** | | [optional] | |**y** | **Integer** | | [optional] | |**z** | **Integer** | | [optional] | -|**xYZ** | **Integer** | | [optional] | diff --git a/vcell-restclient/docs/SimulationResourceApi.md b/vcell-restclient/docs/SimulationResourceApi.md index 934d319186..1b3a3c3c5e 100644 --- a/vcell-restclient/docs/SimulationResourceApi.md +++ b/vcell-restclient/docs/SimulationResourceApi.md @@ -81,8 +81,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## getSimulationStatusWithHttpInfo @@ -155,8 +155,8 @@ ApiResponse<[**SimulationStatusPersistentRecord**](SimulationStatusPersistentRec | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## startSimulation @@ -223,8 +223,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## startSimulationWithHttpInfo @@ -293,8 +293,8 @@ ApiResponse<[**List<StatusMessage>**](StatusMessage.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## stopSimulation @@ -361,8 +361,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## stopSimulationWithHttpInfo @@ -431,6 +431,6 @@ ApiResponse<[**List<StatusMessage>**](StatusMessage.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | diff --git a/vcell-restclient/docs/User.md b/vcell-restclient/docs/User.md index 61753d53d1..d8e81ee20d 100644 --- a/vcell-restclient/docs/User.md +++ b/vcell-restclient/docs/User.md @@ -9,7 +9,6 @@ |------------ | ------------- | ------------- | -------------| |**userName** | **String** | | [optional] | |**key** | [**KeyValue**](KeyValue.md) | | [optional] | -|**iD** | [**KeyValue**](KeyValue.md) | | [optional] | |**name** | **String** | | [optional] | |**testAccount** | **Boolean** | | [optional] | diff --git a/vcell-restclient/docs/UsersResourceApi.md b/vcell-restclient/docs/UsersResourceApi.md index d265979677..831c4b98c6 100644 --- a/vcell-restclient/docs/UsersResourceApi.md +++ b/vcell-restclient/docs/UsersResourceApi.md @@ -347,8 +347,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## getLegacyApiTokenWithHttpInfo @@ -413,8 +413,8 @@ ApiResponse<[**AccesTokenRepresentationRecord**](AccesTokenRepresentationRecord. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## getMappedUser @@ -477,8 +477,8 @@ This endpoint does not need any parameter. | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## getMappedUserWithHttpInfo @@ -543,8 +543,8 @@ ApiResponse<[**UserIdentityJSONSafe**](UserIdentityJSONSafe.md)> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## getMe @@ -733,8 +733,8 @@ null (empty response body) |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | | **409** | VCell Identity not mapped, userid already exists | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## mapNewUserWithHttpInfo @@ -803,8 +803,8 @@ ApiResponse |-------------|-------------|------------------| | **200** | Successful, returning the identity | - | | **409** | VCell Identity not mapped, userid already exists | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## mapUser @@ -871,8 +871,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## mapUserWithHttpInfo @@ -941,8 +941,8 @@ ApiResponse<**Boolean**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## processMagicLink @@ -1141,8 +1141,8 @@ null (empty response body) |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## requestRecoveryEmailWithHttpInfo @@ -1213,8 +1213,8 @@ ApiResponse |-------------|-------------|------------------| | **200** | magic link sent in email if appropriate | - | | **400** | unable to process request | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## unmapUser @@ -1281,8 +1281,8 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | ## unmapUserWithHttpInfo @@ -1351,6 +1351,6 @@ ApiResponse<**Boolean**> | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | OK | - | -| **403** | Not Allowed | - | | **401** | Not Authorized | - | +| **403** | Not Allowed | - | diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java index 10a6c6b4e5..5ac323fc3b 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/api/FieldDataResourceApi.java @@ -18,13 +18,9 @@ import org.vcell.restclient.Pair; import org.vcell.restclient.model.AnalyzedResultsFromFieldData; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.FieldDataDBOperationSpec; -import org.vcell.restclient.model.FieldDataFileOperationSpec; -import org.vcell.restclient.model.FieldDataInfo; -import org.vcell.restclient.model.FieldDataNoCopyConflict; -import org.vcell.restclient.model.FieldDataReferences; +import org.vcell.restclient.model.FieldDataReference; import org.vcell.restclient.model.FieldDataSaveResults; +import org.vcell.restclient.model.FieldDataShape; import java.io.File; import com.fasterxml.jackson.core.type.TypeReference; @@ -96,26 +92,28 @@ private String formatExceptionMessage(String operationId, int statusCode, String } /** - * Copy an existing field data entry. + * Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. * - * @param fieldDataDBOperationSpec (optional) - * @return FieldDataNoCopyConflict + * @param _file (optional) + * @param fileName (optional) + * @return AnalyzedResultsFromFieldData * @throws ApiException if fails to make API call */ - public FieldDataNoCopyConflict copyFieldData(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - ApiResponse localVarResponse = copyFieldDataWithHttpInfo(fieldDataDBOperationSpec); + public AnalyzedResultsFromFieldData analyzeFieldDataFile(File _file, String fileName) throws ApiException { + ApiResponse localVarResponse = analyzeFieldDataFileWithHttpInfo(_file, fileName); return localVarResponse.getData(); } /** - * Copy an existing field data entry. + * Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. * - * @param fieldDataDBOperationSpec (optional) - * @return ApiResponse<FieldDataNoCopyConflict> + * @param _file (optional) + * @param fileName (optional) + * @return ApiResponse<AnalyzedResultsFromFieldData> * @throws ApiException if fails to make API call */ - public ApiResponse copyFieldDataWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = copyFieldDataRequestBuilder(fieldDataDBOperationSpec); + public ApiResponse analyzeFieldDataFileWithHttpInfo(File _file, String fileName) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = analyzeFieldDataFileRequestBuilder(_file, fileName); try { HttpResponse localVarResponse = memberVarHttpClient.send( localVarRequestBuilder.build(), @@ -125,12 +123,12 @@ public ApiResponse copyFieldDataWithHttpInfo(FieldDataD } try { if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("copyFieldData", localVarResponse); + throw getApiException("analyzeFieldDataFile", localVarResponse); } - return new ApiResponse( + return new ApiResponse( localVarResponse.statusCode(), localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream ); } finally { } @@ -143,23 +141,51 @@ public ApiResponse copyFieldDataWithHttpInfo(FieldDataD } } - private HttpRequest.Builder copyFieldDataRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { + private HttpRequest.Builder analyzeFieldDataFileRequestBuilder(File _file, String fileName) throws ApiException { HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData/copy"; + String localVarPath = "/api/v1/fieldData/analyzeFieldDataFile"; localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); - localVarRequestBuilder.header("Content-Type", "application/json"); localVarRequestBuilder.header("Accept", "application/json"); - try { - byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); - localVarRequestBuilder.method("POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); - } catch (IOException e) { - throw new ApiException(e); + MultipartEntityBuilder multiPartBuilder = MultipartEntityBuilder.create(); + boolean hasFiles = false; + multiPartBuilder.addBinaryBody("file", _file); + hasFiles = true; + multiPartBuilder.addTextBody("fileName", fileName.toString()); + HttpEntity entity = multiPartBuilder.build(); + HttpRequest.BodyPublisher formDataPublisher; + if (hasFiles) { + Pipe pipe; + try { + pipe = Pipe.open(); + } catch (IOException e) { + throw new RuntimeException(e); + } + new Thread(() -> { + try (OutputStream outputStream = Channels.newOutputStream(pipe.sink())) { + entity.writeTo(outputStream); + } catch (IOException e) { + e.printStackTrace(); + } + }).start(); + formDataPublisher = HttpRequest.BodyPublishers.ofInputStream(() -> Channels.newInputStream(pipe.source())); + } else { + ByteArrayOutputStream formOutputStream = new ByteArrayOutputStream(); + try { + entity.writeTo(formOutputStream); + } catch (IOException e) { + throw new RuntimeException(e); + } + formDataPublisher = HttpRequest.BodyPublishers + .ofInputStream(() -> new ByteArrayInputStream(formOutputStream.toByteArray())); } + localVarRequestBuilder + .header("Content-Type", entity.getContentType().getValue()) + .method("POST", formDataPublisher); if (memberVarReadTimeout != null) { localVarRequestBuilder.timeout(memberVarReadTimeout); } @@ -169,26 +195,26 @@ private HttpRequest.Builder copyFieldDataRequestBuilder(FieldDataDBOperationSpec return localVarRequestBuilder; } /** - * + * Take the analyzed results of the field data, modify it to your liking, then save it on the server. * * @param analyzedResultsFromFieldData (optional) * @return FieldDataSaveResults * @throws ApiException if fails to make API call */ - public FieldDataSaveResults createNewFieldDataFromFileAlreadyAnalyzed(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { - ApiResponse localVarResponse = createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(analyzedResultsFromFieldData); + public FieldDataSaveResults createFieldDataFromAnalyzedFile(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + ApiResponse localVarResponse = createFieldDataFromAnalyzedFileWithHttpInfo(analyzedResultsFromFieldData); return localVarResponse.getData(); } /** - * + * Take the analyzed results of the field data, modify it to your liking, then save it on the server. * * @param analyzedResultsFromFieldData (optional) * @return ApiResponse<FieldDataSaveResults> * @throws ApiException if fails to make API call */ - public ApiResponse createNewFieldDataFromFileAlreadyAnalyzedWithHttpInfo(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = createNewFieldDataFromFileAlreadyAnalyzedRequestBuilder(analyzedResultsFromFieldData); + public ApiResponse createFieldDataFromAnalyzedFileWithHttpInfo(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = createFieldDataFromAnalyzedFileRequestBuilder(analyzedResultsFromFieldData); try { HttpResponse localVarResponse = memberVarHttpClient.send( localVarRequestBuilder.build(), @@ -198,7 +224,7 @@ public ApiResponse createNewFieldDataFromFileAlreadyAnalyz } try { if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("createNewFieldDataFromFileAlreadyAnalyzed", localVarResponse); + throw getApiException("createFieldDataFromAnalyzedFile", localVarResponse); } return new ApiResponse( localVarResponse.statusCode(), @@ -216,11 +242,11 @@ public ApiResponse createNewFieldDataFromFileAlreadyAnalyz } } - private HttpRequest.Builder createNewFieldDataFromFileAlreadyAnalyzedRequestBuilder(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { + private HttpRequest.Builder createFieldDataFromAnalyzedFileRequestBuilder(AnalyzedResultsFromFieldData analyzedResultsFromFieldData) throws ApiException { HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed"; + String localVarPath = "/api/v1/fieldData/createFieldDataFromAnalyzedFile"; localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); @@ -241,98 +267,25 @@ private HttpRequest.Builder createNewFieldDataFromFileAlreadyAnalyzedRequestBuil } return localVarRequestBuilder; } - /** - * Create new field data from a simulation. - * - * @param fieldDataDBOperationSpec (optional) - * @return ExternalDataIdentifier - * @throws ApiException if fails to make API call - */ - public ExternalDataIdentifier createNewFieldDataFromSimulation(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - ApiResponse localVarResponse = createNewFieldDataFromSimulationWithHttpInfo(fieldDataDBOperationSpec); - return localVarResponse.getData(); - } - - /** - * Create new field data from a simulation. - * - * @param fieldDataDBOperationSpec (optional) - * @return ApiResponse<ExternalDataIdentifier> - * @throws ApiException if fails to make API call - */ - public ApiResponse createNewFieldDataFromSimulationWithHttpInfo(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = createNewFieldDataFromSimulationRequestBuilder(fieldDataDBOperationSpec); - try { - HttpResponse localVarResponse = memberVarHttpClient.send( - localVarRequestBuilder.build(), - HttpResponse.BodyHandlers.ofInputStream()); - if (memberVarResponseInterceptor != null) { - memberVarResponseInterceptor.accept(localVarResponse); - } - try { - if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("createNewFieldDataFromSimulation", localVarResponse); - } - return new ApiResponse( - localVarResponse.statusCode(), - localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream - ); - } finally { - } - } catch (IOException e) { - throw new ApiException(e); - } - catch (InterruptedException e) { - Thread.currentThread().interrupt(); - throw new ApiException(e); - } - } - - private HttpRequest.Builder createNewFieldDataFromSimulationRequestBuilder(FieldDataDBOperationSpec fieldDataDBOperationSpec) throws ApiException { - - HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - - String localVarPath = "/api/v1/fieldData/createFieldDataFromSimulation"; - - localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); - - localVarRequestBuilder.header("Content-Type", "application/json"); - localVarRequestBuilder.header("Accept", "application/json"); - - try { - byte[] localVarPostBody = memberVarObjectMapper.writeValueAsBytes(fieldDataDBOperationSpec); - localVarRequestBuilder.method("POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); - } catch (IOException e) { - throw new ApiException(e); - } - if (memberVarReadTimeout != null) { - localVarRequestBuilder.timeout(memberVarReadTimeout); - } - if (memberVarInterceptor != null) { - memberVarInterceptor.accept(localVarRequestBuilder); - } - return localVarRequestBuilder; - } /** * Delete the selected field data. * - * @param body (optional) + * @param fieldDataID (required) * @throws ApiException if fails to make API call */ - public void deleteFieldData(String body) throws ApiException { - deleteFieldDataWithHttpInfo(body); + public void deleteFieldData(String fieldDataID) throws ApiException { + deleteFieldDataWithHttpInfo(fieldDataID); } /** * Delete the selected field data. * - * @param body (optional) + * @param fieldDataID (required) * @return ApiResponse<Void> * @throws ApiException if fails to make API call */ - public ApiResponse deleteFieldDataWithHttpInfo(String body) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = deleteFieldDataRequestBuilder(body); + public ApiResponse deleteFieldDataWithHttpInfo(String fieldDataID) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = deleteFieldDataRequestBuilder(fieldDataID); try { HttpResponse localVarResponse = memberVarHttpClient.send( localVarRequestBuilder.build(), @@ -365,121 +318,22 @@ public ApiResponse deleteFieldDataWithHttpInfo(String body) throws ApiExce } } - private HttpRequest.Builder deleteFieldDataRequestBuilder(String body) throws ApiException { - - HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - - String localVarPath = "/api/v1/fieldData"; - - localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); - - localVarRequestBuilder.header("Content-Type", "text/plain"); - localVarRequestBuilder.header("Accept", "application/json"); - - localVarRequestBuilder.method("DELETE", HttpRequest.BodyPublishers.ofString(body)); - if (memberVarReadTimeout != null) { - localVarRequestBuilder.timeout(memberVarReadTimeout); - } - if (memberVarInterceptor != null) { - memberVarInterceptor.accept(localVarRequestBuilder); + private HttpRequest.Builder deleteFieldDataRequestBuilder(String fieldDataID) throws ApiException { + // verify the required parameter 'fieldDataID' is set + if (fieldDataID == null) { + throw new ApiException(400, "Missing the required parameter 'fieldDataID' when calling deleteFieldData"); } - return localVarRequestBuilder; - } - /** - * - * - * @param _file (optional) - * @param fileName (optional) - * @return FieldDataFileOperationSpec - * @throws ApiException if fails to make API call - */ - public FieldDataFileOperationSpec generateFieldDataEstimate(File _file, String fileName) throws ApiException { - ApiResponse localVarResponse = generateFieldDataEstimateWithHttpInfo(_file, fileName); - return localVarResponse.getData(); - } - - /** - * - * - * @param _file (optional) - * @param fileName (optional) - * @return ApiResponse<FieldDataFileOperationSpec> - * @throws ApiException if fails to make API call - */ - public ApiResponse generateFieldDataEstimateWithHttpInfo(File _file, String fileName) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = generateFieldDataEstimateRequestBuilder(_file, fileName); - try { - HttpResponse localVarResponse = memberVarHttpClient.send( - localVarRequestBuilder.build(), - HttpResponse.BodyHandlers.ofInputStream()); - if (memberVarResponseInterceptor != null) { - memberVarResponseInterceptor.accept(localVarResponse); - } - try { - if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("generateFieldDataEstimate", localVarResponse); - } - return new ApiResponse( - localVarResponse.statusCode(), - localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream - ); - } finally { - } - } catch (IOException e) { - throw new ApiException(e); - } - catch (InterruptedException e) { - Thread.currentThread().interrupt(); - throw new ApiException(e); - } - } - - private HttpRequest.Builder generateFieldDataEstimateRequestBuilder(File _file, String fileName) throws ApiException { HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData/analyzeFieldDataFromFile"; + String localVarPath = "/api/v1/fieldData/delete/{fieldDataID}" + .replace("{fieldDataID}", ApiClient.urlEncode(fieldDataID.toString())); localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); localVarRequestBuilder.header("Accept", "application/json"); - MultipartEntityBuilder multiPartBuilder = MultipartEntityBuilder.create(); - boolean hasFiles = false; - multiPartBuilder.addBinaryBody("file", _file); - hasFiles = true; - multiPartBuilder.addTextBody("fileName", fileName.toString()); - HttpEntity entity = multiPartBuilder.build(); - HttpRequest.BodyPublisher formDataPublisher; - if (hasFiles) { - Pipe pipe; - try { - pipe = Pipe.open(); - } catch (IOException e) { - throw new RuntimeException(e); - } - new Thread(() -> { - try (OutputStream outputStream = Channels.newOutputStream(pipe.sink())) { - entity.writeTo(outputStream); - } catch (IOException e) { - e.printStackTrace(); - } - }).start(); - formDataPublisher = HttpRequest.BodyPublishers.ofInputStream(() -> Channels.newInputStream(pipe.source())); - } else { - ByteArrayOutputStream formOutputStream = new ByteArrayOutputStream(); - try { - entity.writeTo(formOutputStream); - } catch (IOException e) { - throw new RuntimeException(e); - } - formDataPublisher = HttpRequest.BodyPublishers - .ofInputStream(() -> new ByteArrayInputStream(formOutputStream.toByteArray())); - } - localVarRequestBuilder - .header("Content-Type", entity.getContentType().getValue()) - .method("POST", formDataPublisher); + localVarRequestBuilder.method("DELETE", HttpRequest.BodyPublishers.noBody()); if (memberVarReadTimeout != null) { localVarRequestBuilder.timeout(memberVarReadTimeout); } @@ -491,21 +345,21 @@ private HttpRequest.Builder generateFieldDataEstimateRequestBuilder(File _file, /** * Get all of the ids used to identify, and retrieve field data. * - * @return FieldDataReferences + * @return List<FieldDataReference> * @throws ApiException if fails to make API call */ - public FieldDataReferences getAllFieldDataIDs() throws ApiException { - ApiResponse localVarResponse = getAllFieldDataIDsWithHttpInfo(); + public List getAllFieldDataIDs() throws ApiException { + ApiResponse> localVarResponse = getAllFieldDataIDsWithHttpInfo(); return localVarResponse.getData(); } /** * Get all of the ids used to identify, and retrieve field data. * - * @return ApiResponse<FieldDataReferences> + * @return ApiResponse<List<FieldDataReference>> * @throws ApiException if fails to make API call */ - public ApiResponse getAllFieldDataIDsWithHttpInfo() throws ApiException { + public ApiResponse> getAllFieldDataIDsWithHttpInfo() throws ApiException { HttpRequest.Builder localVarRequestBuilder = getAllFieldDataIDsRequestBuilder(); try { HttpResponse localVarResponse = memberVarHttpClient.send( @@ -518,10 +372,10 @@ public ApiResponse getAllFieldDataIDsWithHttpInfo() throws if (localVarResponse.statusCode()/ 100 != 2) { throw getApiException("getAllFieldDataIDs", localVarResponse); } - return new ApiResponse( + return new ApiResponse>( localVarResponse.statusCode(), localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference>() {}) // closes the InputStream ); } finally { } @@ -554,26 +408,26 @@ private HttpRequest.Builder getAllFieldDataIDsRequestBuilder() throws ApiExcepti return localVarRequestBuilder; } /** - * Get the field data from the selected field data ID. + * Get the shape of the field data. That is it's size, origin, extent, and data identifiers. * - * @param body (optional) - * @return FieldDataInfo + * @param fieldDataID (required) + * @return FieldDataShape * @throws ApiException if fails to make API call */ - public FieldDataInfo getFieldDataFromID(String body) throws ApiException { - ApiResponse localVarResponse = getFieldDataFromIDWithHttpInfo(body); + public FieldDataShape getFieldDataShapeFromID(String fieldDataID) throws ApiException { + ApiResponse localVarResponse = getFieldDataShapeFromIDWithHttpInfo(fieldDataID); return localVarResponse.getData(); } /** - * Get the field data from the selected field data ID. + * Get the shape of the field data. That is it's size, origin, extent, and data identifiers. * - * @param body (optional) - * @return ApiResponse<FieldDataInfo> + * @param fieldDataID (required) + * @return ApiResponse<FieldDataShape> * @throws ApiException if fails to make API call */ - public ApiResponse getFieldDataFromIDWithHttpInfo(String body) throws ApiException { - HttpRequest.Builder localVarRequestBuilder = getFieldDataFromIDRequestBuilder(body); + public ApiResponse getFieldDataShapeFromIDWithHttpInfo(String fieldDataID) throws ApiException { + HttpRequest.Builder localVarRequestBuilder = getFieldDataShapeFromIDRequestBuilder(fieldDataID); try { HttpResponse localVarResponse = memberVarHttpClient.send( localVarRequestBuilder.build(), @@ -583,12 +437,12 @@ public ApiResponse getFieldDataFromIDWithHttpInfo(String body) th } try { if (localVarResponse.statusCode()/ 100 != 2) { - throw getApiException("getFieldDataFromID", localVarResponse); + throw getApiException("getFieldDataShapeFromID", localVarResponse); } - return new ApiResponse( + return new ApiResponse( localVarResponse.statusCode(), localVarResponse.headers().map(), - localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream + localVarResponse.body() == null ? null : memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference() {}) // closes the InputStream ); } finally { } @@ -601,18 +455,22 @@ public ApiResponse getFieldDataFromIDWithHttpInfo(String body) th } } - private HttpRequest.Builder getFieldDataFromIDRequestBuilder(String body) throws ApiException { + private HttpRequest.Builder getFieldDataShapeFromIDRequestBuilder(String fieldDataID) throws ApiException { + // verify the required parameter 'fieldDataID' is set + if (fieldDataID == null) { + throw new ApiException(400, "Missing the required parameter 'fieldDataID' when calling getFieldDataShapeFromID"); + } HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); - String localVarPath = "/api/v1/fieldData"; + String localVarPath = "/api/v1/fieldData/fieldDataShape/{fieldDataID}" + .replace("{fieldDataID}", ApiClient.urlEncode(fieldDataID.toString())); localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); - localVarRequestBuilder.header("Content-Type", "text/plain"); localVarRequestBuilder.header("Accept", "application/json"); - localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.ofString(body)); + localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.noBody()); if (memberVarReadTimeout != null) { localVarRequestBuilder.timeout(memberVarReadTimeout); } diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java index ffd8f67d9b..55338ca90d 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/ExternalDataIdentifier.java @@ -37,7 +37,6 @@ ExternalDataIdentifier.JSON_PROPERTY_KEY, ExternalDataIdentifier.JSON_PROPERTY_OWNER, ExternalDataIdentifier.JSON_PROPERTY_NAME, - ExternalDataIdentifier.JSON_PROPERTY_I_D, ExternalDataIdentifier.JSON_PROPERTY_JOB_INDEX, ExternalDataIdentifier.JSON_PROPERTY_SIMULATION_KEY, ExternalDataIdentifier.JSON_PROPERTY_PARAMETER_SCAN_TYPE, @@ -54,9 +53,6 @@ public class ExternalDataIdentifier { public static final String JSON_PROPERTY_NAME = "name"; private String name; - public static final String JSON_PROPERTY_I_D = "iD"; - private String iD; - public static final String JSON_PROPERTY_JOB_INDEX = "jobIndex"; private Integer jobIndex; @@ -147,31 +143,6 @@ public void setName(String name) { } - public ExternalDataIdentifier iD(String iD) { - this.iD = iD; - return this; - } - - /** - * Get iD - * @return iD - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getiD() { - return iD; - } - - - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setiD(String iD) { - this.iD = iD; - } - - public ExternalDataIdentifier jobIndex(Integer jobIndex) { this.jobIndex = jobIndex; return this; @@ -287,7 +258,6 @@ public boolean equals(Object o) { return Objects.equals(this.key, externalDataIdentifier.key) && Objects.equals(this.owner, externalDataIdentifier.owner) && Objects.equals(this.name, externalDataIdentifier.name) && - Objects.equals(this.iD, externalDataIdentifier.iD) && Objects.equals(this.jobIndex, externalDataIdentifier.jobIndex) && Objects.equals(this.simulationKey, externalDataIdentifier.simulationKey) && Objects.equals(this.parameterScanType, externalDataIdentifier.parameterScanType) && @@ -296,7 +266,7 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(key, owner, name, iD, jobIndex, simulationKey, parameterScanType, dataKey); + return Objects.hash(key, owner, name, jobIndex, simulationKey, parameterScanType, dataKey); } @Override @@ -306,7 +276,6 @@ public String toString() { sb.append(" key: ").append(toIndentedString(key)).append("\n"); sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" iD: ").append(toIndentedString(iD)).append("\n"); sb.append(" jobIndex: ").append(toIndentedString(jobIndex)).append("\n"); sb.append(" simulationKey: ").append(toIndentedString(simulationKey)).append("\n"); sb.append(" parameterScanType: ").append(toIndentedString(parameterScanType)).append("\n"); @@ -373,11 +342,6 @@ public String toUrlQueryString(String prefix) { joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); } - // add `iD` to the URL query string - if (getiD() != null) { - joiner.add(String.format("%siD%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getiD()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - // add `jobIndex` to the URL query string if (getJobIndex() != null) { joiner.add(String.format("%sjobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java new file mode 100644 index 0000000000..930d4275dd --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java @@ -0,0 +1,239 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataReference + */ +@JsonPropertyOrder({ + FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIER, + FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION, + FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataReference { + public static final String JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIER = "externalDataIdentifier"; + private ExternalDataIdentifier externalDataIdentifier; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION = "externalDataAnnotation"; + private String externalDataAnnotation; + + public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF = "externalDataIDSimRef"; + private List externalDataIDSimRef; + + public FieldDataReference() { + } + + public FieldDataReference externalDataIdentifier(ExternalDataIdentifier externalDataIdentifier) { + this.externalDataIdentifier = externalDataIdentifier; + return this; + } + + /** + * Get externalDataIdentifier + * @return externalDataIdentifier + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ExternalDataIdentifier getExternalDataIdentifier() { + return externalDataIdentifier; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIdentifier(ExternalDataIdentifier externalDataIdentifier) { + this.externalDataIdentifier = externalDataIdentifier; + } + + + public FieldDataReference externalDataAnnotation(String externalDataAnnotation) { + this.externalDataAnnotation = externalDataAnnotation; + return this; + } + + /** + * Get externalDataAnnotation + * @return externalDataAnnotation + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getExternalDataAnnotation() { + return externalDataAnnotation; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataAnnotation(String externalDataAnnotation) { + this.externalDataAnnotation = externalDataAnnotation; + } + + + public FieldDataReference externalDataIDSimRef(List externalDataIDSimRef) { + this.externalDataIDSimRef = externalDataIDSimRef; + return this; + } + + public FieldDataReference addExternalDataIDSimRefItem(KeyValue externalDataIDSimRefItem) { + if (this.externalDataIDSimRef == null) { + this.externalDataIDSimRef = new ArrayList<>(); + } + this.externalDataIDSimRef.add(externalDataIDSimRefItem); + return this; + } + + /** + * Get externalDataIDSimRef + * @return externalDataIDSimRef + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getExternalDataIDSimRef() { + return externalDataIDSimRef; + } + + + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalDataIDSimRef(List externalDataIDSimRef) { + this.externalDataIDSimRef = externalDataIDSimRef; + } + + + /** + * Return true if this FieldDataReference object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataReference fieldDataReference = (FieldDataReference) o; + return Objects.equals(this.externalDataIdentifier, fieldDataReference.externalDataIdentifier) && + Objects.equals(this.externalDataAnnotation, fieldDataReference.externalDataAnnotation) && + Objects.equals(this.externalDataIDSimRef, fieldDataReference.externalDataIDSimRef); + } + + @Override + public int hashCode() { + return Objects.hash(externalDataIdentifier, externalDataAnnotation, externalDataIDSimRef); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataReference {\n"); + sb.append(" externalDataIdentifier: ").append(toIndentedString(externalDataIdentifier)).append("\n"); + sb.append(" externalDataAnnotation: ").append(toIndentedString(externalDataAnnotation)).append("\n"); + sb.append(" externalDataIDSimRef: ").append(toIndentedString(externalDataIDSimRef)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `externalDataIdentifier` to the URL query string + if (getExternalDataIdentifier() != null) { + joiner.add(getExternalDataIdentifier().toUrlQueryString(prefix + "externalDataIdentifier" + suffix)); + } + + // add `externalDataAnnotation` to the URL query string + if (getExternalDataAnnotation() != null) { + joiner.add(String.format("%sexternalDataAnnotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getExternalDataAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + + // add `externalDataIDSimRef` to the URL query string + if (getExternalDataIDSimRef() != null) { + for (int i = 0; i < getExternalDataIDSimRef().size(); i++) { + if (getExternalDataIDSimRef().get(i) != null) { + joiner.add(getExternalDataIDSimRef().get(i).toUrlQueryString(String.format("%sexternalDataIDSimRef%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataShape.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataShape.java new file mode 100644 index 0000000000..8bbc5717d2 --- /dev/null +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataShape.java @@ -0,0 +1,325 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.StringJoiner; +import java.util.Objects; +import java.util.Map; +import java.util.HashMap; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.DataIdentifier; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + + +/** + * FieldDataShape + */ +@JsonPropertyOrder({ + FieldDataShape.JSON_PROPERTY_EXTENT, + FieldDataShape.JSON_PROPERTY_ORIGIN, + FieldDataShape.JSON_PROPERTY_ISIZE, + FieldDataShape.JSON_PROPERTY_DATA_IDENTIFIER, + FieldDataShape.JSON_PROPERTY_TIMES +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FieldDataShape { + public static final String JSON_PROPERTY_EXTENT = "extent"; + private Extent extent; + + public static final String JSON_PROPERTY_ORIGIN = "origin"; + private Origin origin; + + public static final String JSON_PROPERTY_ISIZE = "isize"; + private ISize isize; + + public static final String JSON_PROPERTY_DATA_IDENTIFIER = "dataIdentifier"; + private List dataIdentifier; + + public static final String JSON_PROPERTY_TIMES = "times"; + private List times; + + public FieldDataShape() { + } + + public FieldDataShape extent(Extent extent) { + this.extent = extent; + return this; + } + + /** + * Get extent + * @return extent + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Extent getExtent() { + return extent; + } + + + @JsonProperty(JSON_PROPERTY_EXTENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtent(Extent extent) { + this.extent = extent; + } + + + public FieldDataShape origin(Origin origin) { + this.origin = origin; + return this; + } + + /** + * Get origin + * @return origin + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Origin getOrigin() { + return origin; + } + + + @JsonProperty(JSON_PROPERTY_ORIGIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOrigin(Origin origin) { + this.origin = origin; + } + + + public FieldDataShape isize(ISize isize) { + this.isize = isize; + return this; + } + + /** + * Get isize + * @return isize + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public ISize getIsize() { + return isize; + } + + + @JsonProperty(JSON_PROPERTY_ISIZE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsize(ISize isize) { + this.isize = isize; + } + + + public FieldDataShape dataIdentifier(List dataIdentifier) { + this.dataIdentifier = dataIdentifier; + return this; + } + + public FieldDataShape addDataIdentifierItem(DataIdentifier dataIdentifierItem) { + if (this.dataIdentifier == null) { + this.dataIdentifier = new ArrayList<>(); + } + this.dataIdentifier.add(dataIdentifierItem); + return this; + } + + /** + * Get dataIdentifier + * @return dataIdentifier + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getDataIdentifier() { + return dataIdentifier; + } + + + @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDataIdentifier(List dataIdentifier) { + this.dataIdentifier = dataIdentifier; + } + + + public FieldDataShape times(List times) { + this.times = times; + return this; + } + + public FieldDataShape addTimesItem(Double timesItem) { + if (this.times == null) { + this.times = new ArrayList<>(); + } + this.times.add(timesItem); + return this; + } + + /** + * Get times + * @return times + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getTimes() { + return times; + } + + + @JsonProperty(JSON_PROPERTY_TIMES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimes(List times) { + this.times = times; + } + + + /** + * Return true if this FieldDataShape object is equal to o. + */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FieldDataShape fieldDataShape = (FieldDataShape) o; + return Objects.equals(this.extent, fieldDataShape.extent) && + Objects.equals(this.origin, fieldDataShape.origin) && + Objects.equals(this.isize, fieldDataShape.isize) && + Objects.equals(this.dataIdentifier, fieldDataShape.dataIdentifier) && + Objects.equals(this.times, fieldDataShape.times); + } + + @Override + public int hashCode() { + return Objects.hash(extent, origin, isize, dataIdentifier, times); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FieldDataShape {\n"); + sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); + sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); + sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); + sb.append(" dataIdentifier: ").append(toIndentedString(dataIdentifier)).append("\n"); + sb.append(" times: ").append(toIndentedString(times)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `extent` to the URL query string + if (getExtent() != null) { + joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); + } + + // add `origin` to the URL query string + if (getOrigin() != null) { + joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); + } + + // add `isize` to the URL query string + if (getIsize() != null) { + joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); + } + + // add `dataIdentifier` to the URL query string + if (getDataIdentifier() != null) { + for (int i = 0; i < getDataIdentifier().size(); i++) { + if (getDataIdentifier().get(i) != null) { + joiner.add(getDataIdentifier().get(i).toUrlQueryString(String.format("%sdataIdentifier%s%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); + } + } + } + + // add `times` to the URL query string + if (getTimes() != null) { + for (int i = 0; i < getTimes().size(); i++) { + joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, + "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), + URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); + } + } + + return joiner.toString(); + } +} + diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java index 806648c19f..cd299e8791 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/ISize.java @@ -34,8 +34,7 @@ @JsonPropertyOrder({ ISize.JSON_PROPERTY_X, ISize.JSON_PROPERTY_Y, - ISize.JSON_PROPERTY_Z, - ISize.JSON_PROPERTY_X_Y_Z + ISize.JSON_PROPERTY_Z }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class ISize { @@ -48,9 +47,6 @@ public class ISize { public static final String JSON_PROPERTY_Z = "z"; private Integer z; - public static final String JSON_PROPERTY_X_Y_Z = "xYZ"; - private Integer xYZ; - public ISize() { } @@ -129,31 +125,6 @@ public void setZ(Integer z) { } - public ISize xYZ(Integer xYZ) { - this.xYZ = xYZ; - return this; - } - - /** - * Get xYZ - * @return xYZ - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_X_Y_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getxYZ() { - return xYZ; - } - - - @JsonProperty(JSON_PROPERTY_X_Y_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setxYZ(Integer xYZ) { - this.xYZ = xYZ; - } - - /** * Return true if this ISize object is equal to o. */ @@ -168,13 +139,12 @@ public boolean equals(Object o) { ISize isize = (ISize) o; return Objects.equals(this.x, isize.x) && Objects.equals(this.y, isize.y) && - Objects.equals(this.z, isize.z) && - Objects.equals(this.xYZ, isize.xYZ); + Objects.equals(this.z, isize.z); } @Override public int hashCode() { - return Objects.hash(x, y, z, xYZ); + return Objects.hash(x, y, z); } @Override @@ -184,7 +154,6 @@ public String toString() { sb.append(" x: ").append(toIndentedString(x)).append("\n"); sb.append(" y: ").append(toIndentedString(y)).append("\n"); sb.append(" z: ").append(toIndentedString(z)).append("\n"); - sb.append(" xYZ: ").append(toIndentedString(xYZ)).append("\n"); sb.append("}"); return sb.toString(); } @@ -247,11 +216,6 @@ public String toUrlQueryString(String prefix) { joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); } - // add `xYZ` to the URL query string - if (getxYZ() != null) { - joiner.add(String.format("%sxYZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getxYZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - return joiner.toString(); } } diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/User.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/User.java index 7b5db562a7..117c14584b 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/User.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/User.java @@ -35,7 +35,6 @@ @JsonPropertyOrder({ User.JSON_PROPERTY_USER_NAME, User.JSON_PROPERTY_KEY, - User.JSON_PROPERTY_I_D, User.JSON_PROPERTY_NAME, User.JSON_PROPERTY_TEST_ACCOUNT }) @@ -47,9 +46,6 @@ public class User { public static final String JSON_PROPERTY_KEY = "key"; private KeyValue key; - public static final String JSON_PROPERTY_I_D = "iD"; - private KeyValue iD; - public static final String JSON_PROPERTY_NAME = "name"; private String name; @@ -109,31 +105,6 @@ public void setKey(KeyValue key) { } - public User iD(KeyValue iD) { - this.iD = iD; - return this; - } - - /** - * Get iD - * @return iD - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getiD() { - return iD; - } - - - @JsonProperty(JSON_PROPERTY_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setiD(KeyValue iD) { - this.iD = iD; - } - - public User name(String name) { this.name = name; return this; @@ -198,14 +169,13 @@ public boolean equals(Object o) { User user = (User) o; return Objects.equals(this.userName, user.userName) && Objects.equals(this.key, user.key) && - Objects.equals(this.iD, user.iD) && Objects.equals(this.name, user.name) && Objects.equals(this.testAccount, user.testAccount); } @Override public int hashCode() { - return Objects.hash(userName, key, iD, name, testAccount); + return Objects.hash(userName, key, name, testAccount); } @Override @@ -214,7 +184,6 @@ public String toString() { sb.append("class User {\n"); sb.append(" userName: ").append(toIndentedString(userName)).append("\n"); sb.append(" key: ").append(toIndentedString(key)).append("\n"); - sb.append(" iD: ").append(toIndentedString(iD)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); sb.append(" testAccount: ").append(toIndentedString(testAccount)).append("\n"); sb.append("}"); @@ -274,11 +243,6 @@ public String toUrlQueryString(String prefix) { joiner.add(getKey().toUrlQueryString(prefix + "key" + suffix)); } - // add `iD` to the URL query string - if (getiD() != null) { - joiner.add(getiD().toUrlQueryString(prefix + "iD" + suffix)); - } - // add `name` to the URL query string if (getName() != null) { joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java index b041d8312d..eeded53913 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java @@ -15,12 +15,9 @@ import org.vcell.restclient.ApiException; import org.vcell.restclient.model.AnalyzedResultsFromFieldData; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.FieldDataDBOperationSpec; -import org.vcell.restclient.model.FieldDataFileOperationSpec; -import org.vcell.restclient.model.FieldDataNoCopyConflict; -import org.vcell.restclient.model.FieldDataReferences; +import org.vcell.restclient.model.FieldDataReference; import org.vcell.restclient.model.FieldDataSaveResults; +import org.vcell.restclient.model.FieldDataShape; import java.io.File; import org.junit.Test; import org.junit.Ignore; @@ -42,7 +39,7 @@ public class FieldDataResourceApiTest { /** - * Copy an existing field data entry. + * Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. * * * @@ -50,16 +47,17 @@ public class FieldDataResourceApiTest { * if the Api call fails */ @Test - public void copyFieldDataTest() throws ApiException { - FieldDataDBOperationSpec fieldDataDBOperationSpec = null; - FieldDataNoCopyConflict response = - api.copyFieldData(fieldDataDBOperationSpec); + public void analyzeFieldDataFileTest() throws ApiException { + File _file = null; + String fileName = null; + AnalyzedResultsFromFieldData response = + api.analyzeFieldDataFile(_file, fileName); // TODO: test validations } /** - * + * Take the analyzed results of the field data, modify it to your liking, then save it on the server. * * * @@ -67,27 +65,10 @@ public void copyFieldDataTest() throws ApiException { * if the Api call fails */ @Test - public void createNewFieldDataFromFileAlreadyAnalyzedTest() throws ApiException { + public void createFieldDataFromAnalyzedFileTest() throws ApiException { AnalyzedResultsFromFieldData analyzedResultsFromFieldData = null; FieldDataSaveResults response = - api.createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData); - - // TODO: test validations - } - - /** - * Create new field data from a simulation. - * - * - * - * @throws ApiException - * if the Api call fails - */ - @Test - public void createNewFieldDataFromSimulationTest() throws ApiException { - FieldDataDBOperationSpec fieldDataDBOperationSpec = null; - ExternalDataIdentifier response = - api.createNewFieldDataFromSimulation(fieldDataDBOperationSpec); + api.createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData); // TODO: test validations } @@ -102,15 +83,15 @@ public void createNewFieldDataFromSimulationTest() throws ApiException { */ @Test public void deleteFieldDataTest() throws ApiException { - String body = null; + String fieldDataID = null; - api.deleteFieldData(body); + api.deleteFieldData(fieldDataID); // TODO: test validations } /** - * + * Get all of the ids used to identify, and retrieve field data. * * * @@ -118,17 +99,15 @@ public void deleteFieldDataTest() throws ApiException { * if the Api call fails */ @Test - public void generateFieldDataEstimateTest() throws ApiException { - File _file = null; - String fileName = null; - FieldDataFileOperationSpec response = - api.generateFieldDataEstimate(_file, fileName); + public void getAllFieldDataIDsTest() throws ApiException { + List response = + api.getAllFieldDataIDs(); // TODO: test validations } /** - * Get all of the ids used to identify, and retrieve field data. + * Get the shape of the field data. That is it's size, origin, extent, and data identifiers. * * * @@ -136,9 +115,10 @@ public void generateFieldDataEstimateTest() throws ApiException { * if the Api call fails */ @Test - public void getAllFieldDataIDsTest() throws ApiException { - FieldDataReferences response = - api.getAllFieldDataIDs(); + public void getFieldDataShapeFromIDTest() throws ApiException { + String fieldDataID = null; + FieldDataShape response = + api.getFieldDataShapeFromID(fieldDataID); // TODO: test validations } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java new file mode 100644 index 0000000000..42f1f106e9 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java @@ -0,0 +1,68 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.ExternalDataIdentifier; +import org.vcell.restclient.model.KeyValue; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataReference + */ +public class FieldDataReferenceTest { + private final FieldDataReference model = new FieldDataReference(); + + /** + * Model tests for FieldDataReference + */ + @Test + public void testFieldDataReference() { + // TODO: test FieldDataReference + } + + /** + * Test the property 'externalDataIdentifier' + */ + @Test + public void externalDataIdentifierTest() { + // TODO: test externalDataIdentifier + } + + /** + * Test the property 'externalDataAnnotation' + */ + @Test + public void externalDataAnnotationTest() { + // TODO: test externalDataAnnotation + } + + /** + * Test the property 'externalDataIDSimRef' + */ + @Test + public void externalDataIDSimRefTest() { + // TODO: test externalDataIDSimRef + } + +} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java new file mode 100644 index 0000000000..576de83e27 --- /dev/null +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java @@ -0,0 +1,86 @@ +/* + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package org.vcell.restclient.model; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.vcell.restclient.model.DataIdentifier; +import org.vcell.restclient.model.Extent; +import org.vcell.restclient.model.ISize; +import org.vcell.restclient.model.Origin; +import org.junit.Assert; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Model tests for FieldDataShape + */ +public class FieldDataShapeTest { + private final FieldDataShape model = new FieldDataShape(); + + /** + * Model tests for FieldDataShape + */ + @Test + public void testFieldDataShape() { + // TODO: test FieldDataShape + } + + /** + * Test the property 'extent' + */ + @Test + public void extentTest() { + // TODO: test extent + } + + /** + * Test the property 'origin' + */ + @Test + public void originTest() { + // TODO: test origin + } + + /** + * Test the property 'isize' + */ + @Test + public void isizeTest() { + // TODO: test isize + } + + /** + * Test the property 'dataIdentifier' + */ + @Test + public void dataIdentifierTest() { + // TODO: test dataIdentifier + } + + /** + * Test the property 'times' + */ + @Test + public void timesTest() { + // TODO: test times + } + +} diff --git a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES index 0411468fd2..a9995085f5 100644 --- a/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES +++ b/webapp-ng/src/app/core/modules/openapi/.openapi-generator/FILES @@ -25,20 +25,14 @@ model/analyzed-results-from-field-data.ts model/batch-system-type.ts model/bio-model.ts model/biomodel-ref.ts -model/cartesian-mesh.ts -model/coordinate.ts model/data-identifier.ts model/detailed-state.ts model/domain.ts model/extent.ts model/external-data-identifier.ts -model/field-data-db-operation-spec.ts -model/field-data-file-operation-spec.ts -model/field-data-info.ts -model/field-data-no-copy-conflict.ts -model/field-data-references.ts +model/field-data-reference.ts model/field-data-save-results.ts -model/group-access.ts +model/field-data-shape.ts model/hello-world-message.ts model/htc-job-id.ts model/i-size.ts @@ -57,7 +51,6 @@ model/simulation-queue-id.ts model/simulation-status-persistent-record.ts model/status-message.ts model/status.ts -model/ucd-info.ts model/user-identity-json-safe.ts model/user-login-info-for-mapping.ts model/user-registration-info.ts @@ -65,9 +58,5 @@ model/user.ts model/variable-domain.ts model/variable-type.ts model/vc-simulation-identifier.ts -model/version-flag.ts -model/version.ts -model/versionable-type-version.ts -model/versionable-type.ts param.ts variables.ts diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts index 86a4ee3c99..d949fe63ce 100644 --- a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.service.ts @@ -21,19 +21,11 @@ import { Observable } from 'rxjs'; // @ts-ignore import { AnalyzedResultsFromFieldData } from '../model/analyzed-results-from-field-data'; // @ts-ignore -import { ExternalDataIdentifier } from '../model/external-data-identifier'; -// @ts-ignore -import { FieldDataDBOperationSpec } from '../model/field-data-db-operation-spec'; -// @ts-ignore -import { FieldDataFileOperationSpec } from '../model/field-data-file-operation-spec'; -// @ts-ignore -import { FieldDataInfo } from '../model/field-data-info'; -// @ts-ignore -import { FieldDataNoCopyConflict } from '../model/field-data-no-copy-conflict'; -// @ts-ignore -import { FieldDataReferences } from '../model/field-data-references'; +import { FieldDataReference } from '../model/field-data-reference'; // @ts-ignore import { FieldDataSaveResults } from '../model/field-data-save-results'; +// @ts-ignore +import { FieldDataShape } from '../model/field-data-shape'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS } from '../variables'; @@ -122,15 +114,16 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } /** - * Copy an existing field data entry. - * @param fieldDataDBOperationSpec + * Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. + * @param file + * @param fileName * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + public analyzeFieldDataFile(file?: Blob, fileName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public analyzeFieldDataFile(file?: Blob, fileName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public analyzeFieldDataFile(file?: Blob, fileName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public analyzeFieldDataFile(file?: Blob, fileName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { let localVarHeaders = this.defaultHeaders; @@ -151,78 +144,30 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa localVarHttpContext = new HttpContext(); } - // to determine the Content-Type header const consumes: string[] = [ - 'application/json' + 'multipart/form-data' ]; - const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); - if (httpContentTypeSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); - } - let responseType_: 'text' | 'json' | 'blob' = 'json'; - if (localVarHttpHeaderAcceptSelected) { - if (localVarHttpHeaderAcceptSelected.startsWith('text')) { - responseType_ = 'text'; - } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { - responseType_ = 'json'; - } else { - responseType_ = 'blob'; - } - } - - let localVarPath = `/api/v1/fieldData/copy`; - return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, - { - context: localVarHttpContext, - body: fieldDataDBOperationSpec, - responseType: responseType_, - withCredentials: this.configuration.withCredentials, - headers: localVarHeaders, - observe: observe, - reportProgress: reportProgress - } - ); - } - - /** - * @param analyzedResultsFromFieldData - * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. - * @param reportProgress flag to report request and response progress. - */ - public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { - - let localVarHeaders = this.defaultHeaders; + const canConsumeForm = this.canConsumeForm(consumes); - let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; - if (localVarHttpHeaderAcceptSelected === undefined) { - // to determine the Accept header - const httpHeaderAccepts: string[] = [ - 'application/json' - ]; - localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); - } - if (localVarHttpHeaderAcceptSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); + let localVarFormParams: { append(param: string, value: any): any; }; + let localVarUseForm = false; + let localVarConvertFormParamsToString = false; + // use FormData to transmit files using content-type "multipart/form-data" + // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data + localVarUseForm = canConsumeForm; + if (localVarUseForm) { + localVarFormParams = new FormData(); + } else { + localVarFormParams = new HttpParams({encoder: this.encoder}); } - let localVarHttpContext: HttpContext | undefined = options && options.context; - if (localVarHttpContext === undefined) { - localVarHttpContext = new HttpContext(); + if (file !== undefined) { + localVarFormParams = localVarFormParams.append('file', file) as any || localVarFormParams; } - - - // to determine the Content-Type header - const consumes: string[] = [ - 'application/json' - ]; - const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); - if (httpContentTypeSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + if (fileName !== undefined) { + localVarFormParams = localVarFormParams.append('fileName', fileName) as any || localVarFormParams; } let responseType_: 'text' | 'json' | 'blob' = 'json'; @@ -236,11 +181,11 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } } - let localVarPath = `/api/v1/fieldData/createFieldDataFromFileAlreadyAnalyzed`; - return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + let localVarPath = `/api/v1/fieldData/analyzeFieldDataFile`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, - body: analyzedResultsFromFieldData, + body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams, responseType: responseType_, withCredentials: this.configuration.withCredentials, headers: localVarHeaders, @@ -251,15 +196,15 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } /** - * Create new field data from a simulation. - * @param fieldDataDBOperationSpec + * Take the analyzed results of the field data, modify it to your liking, then save it on the server. + * @param analyzedResultsFromFieldData * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + public createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { let localVarHeaders = this.defaultHeaders; @@ -301,11 +246,11 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } } - let localVarPath = `/api/v1/fieldData/createFieldDataFromSimulation`; - return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + let localVarPath = `/api/v1/fieldData/createFieldDataFromAnalyzedFile`; + return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, - body: fieldDataDBOperationSpec, + body: analyzedResultsFromFieldData, responseType: responseType_, withCredentials: this.configuration.withCredentials, headers: localVarHeaders, @@ -317,86 +262,24 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa /** * Delete the selected field data. - * @param body + * @param fieldDataID * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public deleteFieldData(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable; - public deleteFieldData(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; - public deleteFieldData(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; - public deleteFieldData(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable { - - let localVarHeaders = this.defaultHeaders; - - let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; - if (localVarHttpHeaderAcceptSelected === undefined) { - // to determine the Accept header - const httpHeaderAccepts: string[] = [ - ]; - localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); - } - if (localVarHttpHeaderAcceptSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected); - } - - let localVarHttpContext: HttpContext | undefined = options && options.context; - if (localVarHttpContext === undefined) { - localVarHttpContext = new HttpContext(); - } - - - // to determine the Content-Type header - const consumes: string[] = [ - 'text/plain' - ]; - const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); - if (httpContentTypeSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); + public deleteFieldData(fieldDataID: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable; + public deleteFieldData(fieldDataID: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; + public deleteFieldData(fieldDataID: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>; + public deleteFieldData(fieldDataID: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable { + if (fieldDataID === null || fieldDataID === undefined) { + throw new Error('Required parameter fieldDataID was null or undefined when calling deleteFieldData.'); } - let responseType_: 'text' | 'json' | 'blob' = 'json'; - if (localVarHttpHeaderAcceptSelected) { - if (localVarHttpHeaderAcceptSelected.startsWith('text')) { - responseType_ = 'text'; - } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) { - responseType_ = 'json'; - } else { - responseType_ = 'blob'; - } - } - - let localVarPath = `/api/v1/fieldData`; - return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`, - { - context: localVarHttpContext, - body: body, - responseType: responseType_, - withCredentials: this.configuration.withCredentials, - headers: localVarHeaders, - observe: observe, - reportProgress: reportProgress - } - ); - } - - /** - * @param file - * @param fileName - * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. - * @param reportProgress flag to report request and response progress. - */ - public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public generateFieldDataEstimate(file?: Blob, fileName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public generateFieldDataEstimate(file?: Blob, fileName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { - let localVarHeaders = this.defaultHeaders; let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept; if (localVarHttpHeaderAcceptSelected === undefined) { // to determine the Accept header const httpHeaderAccepts: string[] = [ - 'application/json' ]; localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts); } @@ -409,31 +292,6 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa localVarHttpContext = new HttpContext(); } - // to determine the Content-Type header - const consumes: string[] = [ - 'multipart/form-data' - ]; - - const canConsumeForm = this.canConsumeForm(consumes); - - let localVarFormParams: { append(param: string, value: any): any; }; - let localVarUseForm = false; - let localVarConvertFormParamsToString = false; - // use FormData to transmit files using content-type "multipart/form-data" - // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data - localVarUseForm = canConsumeForm; - if (localVarUseForm) { - localVarFormParams = new FormData(); - } else { - localVarFormParams = new HttpParams({encoder: this.encoder}); - } - - if (file !== undefined) { - localVarFormParams = localVarFormParams.append('file', file) as any || localVarFormParams; - } - if (fileName !== undefined) { - localVarFormParams = localVarFormParams.append('fileName', fileName) as any || localVarFormParams; - } let responseType_: 'text' | 'json' | 'blob' = 'json'; if (localVarHttpHeaderAcceptSelected) { @@ -446,11 +304,10 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } } - let localVarPath = `/api/v1/fieldData/analyzeFieldDataFromFile`; - return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`, + let localVarPath = `/api/v1/fieldData/delete/${this.configuration.encodeParam({name: "fieldDataID", value: fieldDataID, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined})}`; + return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, - body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams, responseType: responseType_, withCredentials: this.configuration.withCredentials, headers: localVarHeaders, @@ -465,9 +322,9 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public getAllFieldDataIDs(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public getAllFieldDataIDs(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public getAllFieldDataIDs(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldDataIDs(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getAllFieldDataIDs(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>>; + public getAllFieldDataIDs(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>>; public getAllFieldDataIDs(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { let localVarHeaders = this.defaultHeaders; @@ -502,7 +359,7 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } let localVarPath = `/api/v1/fieldData/IDs`; - return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, + return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, responseType: responseType_, @@ -515,15 +372,18 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } /** - * Get the field data from the selected field data ID. - * @param body + * Get the shape of the field data. That is it\'s size, origin, extent, and data identifiers. + * @param fieldDataID * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public getFieldDataFromID(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; - public getFieldDataFromID(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public getFieldDataFromID(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; - public getFieldDataFromID(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + public getFieldDataShapeFromID(fieldDataID: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable; + public getFieldDataShapeFromID(fieldDataID: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getFieldDataShapeFromID(fieldDataID: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable>; + public getFieldDataShapeFromID(fieldDataID: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable { + if (fieldDataID === null || fieldDataID === undefined) { + throw new Error('Required parameter fieldDataID was null or undefined when calling getFieldDataShapeFromID.'); + } let localVarHeaders = this.defaultHeaders; @@ -545,15 +405,6 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } - // to determine the Content-Type header - const consumes: string[] = [ - 'text/plain' - ]; - const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes); - if (httpContentTypeSelected !== undefined) { - localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected); - } - let responseType_: 'text' | 'json' | 'blob' = 'json'; if (localVarHttpHeaderAcceptSelected) { if (localVarHttpHeaderAcceptSelected.startsWith('text')) { @@ -565,11 +416,10 @@ export class FieldDataResourceService implements FieldDataResourceServiceInterfa } } - let localVarPath = `/api/v1/fieldData`; - return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, + let localVarPath = `/api/v1/fieldData/fieldDataShape/${this.configuration.encodeParam({name: "fieldDataID", value: fieldDataID, in: "path", style: "simple", explode: false, dataType: "string", dataFormat: undefined})}`; + return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`, { context: localVarHttpContext, - body: body, responseType: responseType_, withCredentials: this.configuration.withCredentials, headers: localVarHeaders, diff --git a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts index 10e8d4734c..b613b85b23 100644 --- a/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts +++ b/webapp-ng/src/app/core/modules/openapi/api/field-data-resource.serviceInterface.ts @@ -14,13 +14,9 @@ import { HttpHeaders } from '@angular/comm import { Observable } from 'rxjs'; import { AnalyzedResultsFromFieldData } from '../model/models'; -import { ExternalDataIdentifier } from '../model/models'; -import { FieldDataDBOperationSpec } from '../model/models'; -import { FieldDataFileOperationSpec } from '../model/models'; -import { FieldDataInfo } from '../model/models'; -import { FieldDataNoCopyConflict } from '../model/models'; -import { FieldDataReferences } from '../model/models'; +import { FieldDataReference } from '../model/models'; import { FieldDataSaveResults } from '../model/models'; +import { FieldDataShape } from '../model/models'; import { Configuration } from '../configuration'; @@ -32,52 +28,38 @@ export interface FieldDataResourceServiceInterface { configuration: Configuration; /** - * Copy an existing field data entry. + * Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. * - * @param fieldDataDBOperationSpec + * @param file + * @param fileName */ - copyFieldData(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + analyzeFieldDataFile(file?: Blob, fileName?: string, extraHttpRequestParams?: any): Observable; /** - * + * Take the analyzed results of the field data, modify it to your liking, then save it on the server. * * @param analyzedResultsFromFieldData */ - createNewFieldDataFromFileAlreadyAnalyzed(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, extraHttpRequestParams?: any): Observable; - - /** - * Create new field data from a simulation. - * - * @param fieldDataDBOperationSpec - */ - createNewFieldDataFromSimulation(fieldDataDBOperationSpec?: FieldDataDBOperationSpec, extraHttpRequestParams?: any): Observable; + createFieldDataFromAnalyzedFile(analyzedResultsFromFieldData?: AnalyzedResultsFromFieldData, extraHttpRequestParams?: any): Observable; /** * Delete the selected field data. * - * @param body - */ - deleteFieldData(body?: string, extraHttpRequestParams?: any): Observable<{}>; - - /** - * - * - * @param file - * @param fileName + * @param fieldDataID */ - generateFieldDataEstimate(file?: Blob, fileName?: string, extraHttpRequestParams?: any): Observable; + deleteFieldData(fieldDataID: string, extraHttpRequestParams?: any): Observable<{}>; /** * Get all of the ids used to identify, and retrieve field data. * */ - getAllFieldDataIDs(extraHttpRequestParams?: any): Observable; + getAllFieldDataIDs(extraHttpRequestParams?: any): Observable>; /** - * Get the field data from the selected field data ID. + * Get the shape of the field data. That is it\'s size, origin, extent, and data identifiers. * - * @param body + * @param fieldDataID */ - getFieldDataFromID(body?: string, extraHttpRequestParams?: any): Observable; + getFieldDataShapeFromID(fieldDataID: string, extraHttpRequestParams?: any): Observable; } diff --git a/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts b/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts index bef0813fee..8cc2e19db5 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/external-data-identifier.ts @@ -17,7 +17,6 @@ export interface ExternalDataIdentifier { key?: KeyValue; owner?: User; name?: string; - iD?: string; jobIndex?: number; simulationKey?: KeyValue; parameterScanType?: boolean; diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts new file mode 100644 index 0000000000..a761f15713 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts @@ -0,0 +1,21 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { KeyValue } from './key-value'; +import { ExternalDataIdentifier } from './external-data-identifier'; + + +export interface FieldDataReference { + externalDataIdentifier?: ExternalDataIdentifier; + externalDataAnnotation?: string; + externalDataIDSimRef?: Array; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-shape.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-shape.ts new file mode 100644 index 0000000000..00b95546a1 --- /dev/null +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-shape.ts @@ -0,0 +1,25 @@ +/** + * VCell API + * VCell API + * + * The version of the OpenAPI document: 1.0.1 + * Contact: vcell_support@uchc.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ +import { Origin } from './origin'; +import { DataIdentifier } from './data-identifier'; +import { Extent } from './extent'; +import { ISize } from './i-size'; + + +export interface FieldDataShape { + extent?: Extent; + origin?: Origin; + isize?: ISize; + dataIdentifier?: Array; + times?: Array; +} + diff --git a/webapp-ng/src/app/core/modules/openapi/model/i-size.ts b/webapp-ng/src/app/core/modules/openapi/model/i-size.ts index 5a9e9f1481..8a4749dd5a 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/i-size.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/i-size.ts @@ -15,6 +15,5 @@ export interface ISize { x?: number; y?: number; z?: number; - xYZ?: number; } diff --git a/webapp-ng/src/app/core/modules/openapi/model/models.ts b/webapp-ng/src/app/core/modules/openapi/model/models.ts index 24482e7a15..fb8ebc5c35 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/models.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/models.ts @@ -3,20 +3,14 @@ export * from './analyzed-results-from-field-data'; export * from './batch-system-type'; export * from './bio-model'; export * from './biomodel-ref'; -export * from './cartesian-mesh'; -export * from './coordinate'; export * from './data-identifier'; export * from './detailed-state'; export * from './domain'; export * from './extent'; export * from './external-data-identifier'; -export * from './field-data-db-operation-spec'; -export * from './field-data-file-operation-spec'; -export * from './field-data-info'; -export * from './field-data-no-copy-conflict'; -export * from './field-data-references'; +export * from './field-data-reference'; export * from './field-data-save-results'; -export * from './group-access'; +export * from './field-data-shape'; export * from './hello-world-message'; export * from './htc-job-id'; export * from './i-size'; @@ -34,7 +28,6 @@ export * from './simulation-queue-id'; export * from './simulation-status-persistent-record'; export * from './status'; export * from './status-message'; -export * from './ucd-info'; export * from './user'; export * from './user-identity-json-safe'; export * from './user-login-info-for-mapping'; @@ -42,7 +35,3 @@ export * from './user-registration-info'; export * from './vc-simulation-identifier'; export * from './variable-domain'; export * from './variable-type'; -export * from './version'; -export * from './version-flag'; -export * from './versionable-type'; -export * from './versionable-type-version'; diff --git a/webapp-ng/src/app/core/modules/openapi/model/user.ts b/webapp-ng/src/app/core/modules/openapi/model/user.ts index c15b7edcd6..eaf113a72d 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/user.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/user.ts @@ -15,7 +15,6 @@ import { KeyValue } from './key-value'; export interface User { userName?: string; key?: KeyValue; - iD?: KeyValue; name?: string; testAccount?: boolean; } From 0d02999071df72a865b7aab2095e8a6a04d1ad86 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 3 Jan 2025 07:36:22 -0500 Subject: [PATCH 27/37] Test For File Uploading --- .../restq/apiclient/FieldDataAPITest.java | 68 ++++++++++++++---- .../src/test/resources/flybrain-035.tif | Bin 0 -> 196839 bytes 2 files changed, 54 insertions(+), 14 deletions(-) create mode 100644 vcell-rest/src/test/resources/flybrain-035.tif diff --git a/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java index 4a1a89748e..215ebd264b 100644 --- a/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java +++ b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java @@ -6,6 +6,7 @@ import io.quarkus.test.keycloak.client.KeycloakTestClient; import jakarta.inject.Inject; import org.apache.commons.io.FileUtils; +import org.eclipse.jetty.http.HttpStatus; import org.eclipse.microprofile.config.inject.ConfigProperty; import org.junit.jupiter.api.*; import org.vcell.restclient.ApiClient; @@ -13,14 +14,16 @@ import org.vcell.restclient.api.FieldDataResourceApi; import org.vcell.restclient.api.UsersResourceApi; import org.vcell.restclient.model.AnalyzedResultsFromFieldData; -import org.vcell.restclient.model.FieldDataInfo; -import org.vcell.restclient.model.FieldDataReferences; +import org.vcell.restclient.model.FieldDataReference; import org.vcell.restclient.model.FieldDataSaveResults; +import org.vcell.restclient.model.FieldDataShape; import org.vcell.restq.TestEndpointUtils; import org.vcell.restq.config.CDIVCellConfigProvider; import org.vcell.restq.db.AgroalConnectionFactory; -import org.vcell.util.*; -import org.vcell.util.document.KeyValue; +import org.vcell.util.DataAccessException; +import org.vcell.util.Extent; +import org.vcell.util.ISize; +import org.vcell.util.Origin; import java.io.File; import java.io.IOException; @@ -114,10 +117,10 @@ public void testAddAndDeleteFieldDataFromFile() throws ApiException { saveFieldDataFromFile.setShortSpecData(matrix); saveFieldDataFromFile.varNames(varNames); saveFieldDataFromFile.times(times); saveFieldDataFromFile.origin(Origin.originToDTO(origin)); saveFieldDataFromFile.extent(Extent.extentToDTO(extent)); saveFieldDataFromFile.isize(ISize.iSizeToDTO(iSize)); saveFieldDataFromFile.annotation("test annotation"); saveFieldDataFromFile.name("TestFile"); - FieldDataSaveResults results = fieldDataResourceApi.createNewFieldDataFromFileAlreadyAnalyzed(saveFieldDataFromFile); + FieldDataSaveResults results = fieldDataResourceApi.createFieldDataFromAnalyzedFile(saveFieldDataFromFile); // File is Saved on File System - FieldDataInfo fieldDataInfo = fieldDataResourceApi.getFieldDataFromID(results.getFieldDataID()); + FieldDataShape fieldDataInfo = fieldDataResourceApi.getFieldDataShapeFromID(results.getFieldDataID()); Assertions.assertEquals(saveFieldDataFromFile.getName(), results.getFieldDataName()); Assertions.assertTrue(origin.compareEqual(Origin.dtoToOrigin(fieldDataInfo.getOrigin()))); Assertions.assertTrue(extent.compareEqual(Extent.dtoToExtent(fieldDataInfo.getExtent()))); @@ -125,10 +128,10 @@ public void testAddAndDeleteFieldDataFromFile() throws ApiException { Assertions.assertEquals(times, fieldDataInfo.getTimes()); // It's in the DB - FieldDataReferences references = fieldDataResourceApi.getAllFieldDataIDs(); - Assertions.assertEquals(saveFieldDataFromFile.getAnnotation(), references.getExternalDataAnnotations().get(0)); - Assertions.assertEquals(results.getFieldDataID(), references.getExternalDataIdentifiers().get(0).getKey().getValue().toString()); - Assertions.assertEquals(0, references.getExternalDataIDSimRefs().size()); + List references = fieldDataResourceApi.getAllFieldDataIDs(); + Assertions.assertEquals(saveFieldDataFromFile.getAnnotation(), references.get(0).getExternalDataAnnotation()); + Assertions.assertEquals(results.getFieldDataID(), references.get(0).getExternalDataIdentifier().getKey().getValue().toString()); + Assertions.assertEquals(0, references.get(0).getExternalDataIDSimRef().size()); /////////////////////// // Delete Field Data // @@ -137,16 +140,53 @@ public void testAddAndDeleteFieldDataFromFile() throws ApiException { // No Longer on File System try{ - fieldDataResourceApi.getFieldDataFromID(results.getFieldDataID()); + fieldDataResourceApi.getFieldDataShapeFromID(results.getFieldDataID()); } catch (ApiException e){ Assertions.assertEquals(404, e.getCode()); } // No Longer in DB references = fieldDataResourceApi.getAllFieldDataIDs(); - Assertions.assertEquals(0, references.getExternalDataIdentifiers().size()); - Assertions.assertEquals(0, references.getExternalDataAnnotations().size()); - Assertions.assertEquals(0, references.getExternalDataIDSimRefs().size()); + Assertions.assertEquals(0, references.size()); + } + + + @Test + public void testFileUploading() throws ApiException, IOException { + FieldDataResourceApi fieldDataResourceApi = new FieldDataResourceApi(aliceAPIClient); + File testFile = TestEndpointUtils.getResourceFile("/flybrain-035.tif"); + try{ + fieldDataResourceApi.analyzeFieldDataFile(testFile, "invalid N@me #Ezequiel"); + } catch (ApiException e){ + Assertions.assertEquals(HttpStatus.BAD_REQUEST_400, e.getCode()); + } + + AnalyzedResultsFromFieldData results = fieldDataResourceApi.analyzeFieldDataFile(testFile, "bob"); + + Assertions.assertNotNull(results); + Assertions.assertNotNull(results.getShortSpecData()); + + FieldDataSaveResults saveResults = fieldDataResourceApi.createFieldDataFromAnalyzedFile(results); + Assertions.assertNotNull(saveResults); + + FieldDataShape fieldDataInfo = fieldDataResourceApi.getFieldDataShapeFromID(saveResults.getFieldDataID()); + Assertions.assertNotNull(fieldDataInfo); + Assertions.assertTrue(Origin.dtoToOrigin(fieldDataInfo.getOrigin()).compareEqual(new Origin(0.0, 0.0, 0.0))); + Assertions.assertTrue(Extent.dtoToExtent(fieldDataInfo.getExtent()).compareEqual(new Extent(684.9333393978472, 684.9333393978472, 1))); + Assertions.assertTrue(ISize.dtoToISize(fieldDataInfo.getIsize()).compareEqual(new ISize(256, 256, 1))); + Assertions.assertEquals(1, fieldDataInfo.getTimes().size()); + + fieldDataResourceApi.deleteFieldData(saveResults.getFieldDataID()); + + try{ + fieldDataResourceApi.getFieldDataShapeFromID(saveResults.getFieldDataID()); + } catch (ApiException e){ + Assertions.assertEquals(404, e.getCode()); + } + + // No Longer in DB + List references = fieldDataResourceApi.getAllFieldDataIDs(); + Assertions.assertEquals(0, references.size()); } } diff --git a/vcell-rest/src/test/resources/flybrain-035.tif b/vcell-rest/src/test/resources/flybrain-035.tif new file mode 100644 index 0000000000000000000000000000000000000000..5c5d889f677a9ef9c06e52573dfe63b6b2eb572a GIT binary patch literal 196839 zcmeFaZ|G~=ncuf>rYRz~PSqF92%pS!ckUSWWLl&2G@v***_f6pbpmSe3)wfGsNr;~ zG9(qL9aKWcg8N1chWyva z$v^iW|N5W!^56b%zVzw8{^f4>Gk@-H{fVOZo@|Pq9|Yd z-fcae5%M4Wx5Y1g`o*)&r)C5`0wVy(yIHEDK;l3h`o)u8@e7|Qp7e{q@;?_(znV`q z|28A=(HH?hZk!i`qSZ6_!9NQ2b^VXpF)4$<~fU}lXSC*fv!2e(RT=AJNnhSAxb2KCH zU`GJ!Z3F)CKUE-L_%HQ~-arWd55FiR!**ID<;n>|^R-KGipbdBFdx???+sKmI=!tyxiwi`H29XLdkq zK07boo)i^@(4>)7!1ynEMQb2;7%oJLr~IZV)XTm>%?Au2z-1pmo6|bpc-V*6tn>RLxB)frVailMS(B{fPXkoXaP!5E6?okX7&1xbo0$0 z$_SLj7d|EELQBGF#Y(?DFMj=N#oIJ;NSYihcXgPKVHKT0Q|xBNd-Q8FGc%URJ)>eDN4lnZ|zhr)mRqA zMgm8|{?iT`fp%d3!M~i}x_E9OlcoT4jirH}L`0}lG)FT6Kh+UvnUk!Gul%1W&Pi0K z1&o)P0`PWw*CbE(Dt!8TMSU&0SK>!3XFwz-LaQk z3^^KB1oVQ{VZg6-0nRo@GXg*15qMq~*NNiua2_xZ{)yF)3H)Qm5deR_7XSQOjIUxr zqpQHba0%sL{vTb7fA|N*Fyo)Il)rl_s&mmncaUAtf+Nw|%mLDo77OHJj4Xh^wlD>- zE?mn8uih%OO|&_h5%|fCKuh4izN7R@e?u&tK)u2{yP`6&!K9M`&wwAmcMN_2j|!j& z6oT_UHC=~tRG{rb%Fzhwy!Cqp69Ljb$xR?+TC9uKTBPWmzu|RZm=BDI6ocVmY-6Occf^bc3%7V`-V#*B4Qm$~cGQ0R9{PfjXxsL;yct@Yu$` z?>Pd!U`B{SbmwpWZ^HlR50zmeC{{(mbg@OofO5)D!_8E_eHQfC}Kfuw`*pB5B)FS zG$^~;Q?#=))D-X!{)s$XmT_AL;U9!AEPxiAlY(s^J$9zBQlJ+UwwzX;8Yrg(jp$qp z@&gN}y6~kxR3iw%qRvGwHgkcN43M3cj1j2=V*C>Y3dO_`Xz<^_^}`>5GBFLdZnCOH z^yV}FQp^X^4t2TO=7VHpVcY_KV9dw1F;6By&PU1td12vW)FJI#s0QZ8)}7jlz$}0e zCdDIW1%cQpPB(ssz|TZLXlPKhyPB0k-u&>teAD7( z4{rhU2pMr03-AW#tqgwh6?HBN{CvDg?Ky&)3FIg7(s}owG4dNfZKm z%s47=!+$G7olMH#w7{9Di8|2Wz%5s9?d*1#5&Cuqm~_xPg#8sP5TtPEL~|4PuWBt5 zG%oOm^_Oqj(Fk-MZ-MI1y_07xY$LS=xQ?v?Ko`Ix;Fdy!l9z;2$V-L#c-BUUC~w8J zd}J-ad6n43m~mgq55<4_ziate_+N+xu{3~J5)X*+tWC2WsKM=rIRaDdUeKn^T~Qvy zKt`G8)CNENpMVeGBm?sSuAvCUi%_S$`a$@Qn)kGTYpLH3_ksOFo)kjqhK?5zAY~sN z_-9Ir;6IDeJRm9jH%Bu9AIb={6!T#dCW}zojk75_N0D#@1_I_ofPI}~`ydwRf`3YY zD;VZu2&c-Nr-W1Y&)%xNoWbBDxpL1MH?|6t$D-J4`y9LG*no{=qQ@%x%|@UPILvE+6a1%*&g@Q?AwHxd6wZJVPRfma>@z+Z~?v#%KZKihb<3%)&*{qF*G z2j>AfI0XN*9Q^MaqJW$_Xh9(MRnmj@f+oz{_!lRAj0NJc6_9(8;YQj@y%qj>a9+Xx z-Yb9Y=E7zKJOUlzpNKk7oe=5=;Se6;Eo{QU{bX?#{0H+nJMsz7nOh6U0DgqbtH3_4 zI^OxhY6Q!lDG(o9xemQTxRIVITc_P|B0p90M{Gvm1CKyQL>iBhXSm{FUf$louI51a z;3Dh|?nVA_0Z;+J3HW~m@-IJHK_FM<{dQss$R(|#_Q-W@{J9;*AN=#^0UJ=61@v~5 zhW~uvzyIsrK*zr1Os*wU02GKfIS_K}XZI6DV4p*5b*QZiFC+g&(B3IUE`LE;a-kl9 zF|bwtR+y0=g{`yj&lYR^U!Exw{@HQ8(xNaT{C8gWzh3kGKi~+kkOZB^on&t_-X-J* z{9~2}w)2pms|Ea{5#S#I&%)<><-IV5(opS`FQGz|xDbBTC4*yo|H6BD%3CKp2wRi? zO$yJ_TP7@?2yTvM1U}FRbOe4R_V%;WjLin{pYkf>9MS%p3Y^V?D1Qn0cO^jg25(pU zKALh5-n7HDy8QHVn=jnrDErSw2%Zjz2L$LOTe5N6o1+STD8PdQ%dmg|)Ea)kF z&(6gky<7az_q5@sHtg3F2gn+JE z3uB&oYtWGY5A>IBF4hQCMQ0$UPrKf){k1?n4nL#Ln`915R5SO}lK z_iX1}w1Kp7-u>aRqpS7H+Xaq`cCm!k97Is(i)Rh*0 z*F}3J{tr;Y?L`F;kl)YX2iU;!Wq4=As+^ttQNecpR++*mukt*iQ>XVd^6@ z!Q+BAXc4n*j%Ea2eFWNy`6Fy66aGn2fw}O{3mL#a+a4n79`XO4&2OL=gDl*>BsVAb zez{k&N)+c(5X|AixR#Polb8I3m)m@?DYii9-Er=Aga23m(>GT#0vP|1_Bm^}Gsp*5 zLxq5NGZpV`Bk&&hADaIJ?Famz7l`)l6h!_Gu`il>m7kK1gx0*EGE5ft=ZoC(U2DG4 z-6eZJ1=-i@fDj%5Yj%D%DE=TLK-iNIN_s6hD!^Mu*ikmu``K^=pc$Q$)_>nUrS)GF zAz%zdduA_u99v!jEgx&k3kc6>=T#4ChmQxjw>N~ha|KF5N;g6ea%!w80REHkzt*+~o^}N1;Q#9F2SB=O6~OExf!mSy z!WFjFcPU7=lUu#Cwj0$>X%dkNgq+eep^vBZppAI`PV2nsML@N{&xRj?zwez7e2eC2 zM&K1jpwx?`g#VfO&s5L6hytMnOaxQ;zklWbme~jS2=SjXV;bHM zf}hy@wHbbxZqk=+J79jP@K$oj@t>34^MFGEw`W_moNF&&L2^JicW2RAPh1XUzf{yX>6 zE<;Cqs+Vy7-jC<(&-xTgy<+%#ZQ94q4$fgi$qTYK$d($S&=-2l=^?Q|fVWA?ST zElyGHQ?mb*kZ%>u(Tu<=jzEB|XGT5td!0!KIz>{Vt>0l>?d1-<^wYrrqFPajI}VFT*q>nwo(mLFOvDxKoz zF!YNUT+$rP2)yzLz6IxoA}T-Kim`-M4@!?N@a`17x@YS(1#ZfXpz+)*?nqkMlch^tgP&7C-9P@$V>rm0L)9+@P%vBAsA5@ zd`OOd$>^)%HW+h-kNh+4|N5^Lh-^D0BfGi|Y-$RqUC3SHj{V}z%D?B>u~nzg6|nR8 zzwGcy90|_vQ>1_&9;G**H~4RW{K_Lx35qiQ;4M-R1^&lM+5g7=e_$Wd$Ii2p^Q`q; zQee*>HeTt;BLljG%egih>Fehz_%V0z4|MtUEDs^eE5-9#Z*_*} z;~Eo~Wo?3Af#E$TTB@Um+=%@T=!JhBvWWr}&GF-p02UP}q5_H~PLtUev;v%@l+XOK z&AGz$JP03~aP&h+U(?Sa0Z}N5sv&hwyTYx0xA6UdAi|3uEG(pgAfxpF(Oiy?f5#)(Tu?R9DyfY*=?-1+|s~v z?aVlTq@0qWK5C`_U7(Z_ggoNMWblGnCIj{ZZ;&8NN~DN~bCJ*pqDH6yp(JhKr?txM zkRoN4_!uqs-8lC`qWpH>s6fvh7s9_FGaf4i|Juk(`_0je!21{helP|6!zdJ8!4WW{ zh(`c~(pt7%3uFj@95@AyK#`AQxdUK+?yYg)pA1U_$l#(dX~g`2eebN0DH?$gN+PVJ zrf7#okZ6tDg+w7KcaJ;vT!(68s;qi>i2?ird%gc>q)2I67oc);G$Zh%MgaU1X~EeH zMh$_lYVmde&(r{y!2J}X0GS{PGzJ0zA$qYCo>>k9_LzP0JueMo^Seh0P?ydBm;P;Q z@A*V8c#cwU?;oi(;Hq7AOYQ&U=i?<)-(_KsduXzB(66AX8XD0x{&R}9(znoGHf)48 z;mhDG6B_;GuN1%V3Dc(^H3-f5*LMU;Sx!(CF?KKs;Dw*hDQ*eC_)$?5LBK z;6esJMjqSVH|JrQ7|gR?MvRnTDZkze{;7a)iuD50KHkAa_=lzNhz&k6ubAL9{=)y> z8${Pu2U1FwCi!PS7fHJE$J`U4y(fY8(5v`iZURBfO3Yt$lCPlHDb=di_s`pW^B*|^ z`q|u$K#sxu{3nv-OvtGXds2iqqJK*3SqOGJu#IiU&&8xee%KTQ>?N#`p#rC(;>AIB z0oX*!ssXQ_M!z+tlD+qi?p$qt$A6>(wSJ@k z=QsT}{X3pnhH_QjVo#lyiAfdREsN%8M&SF5Ku3{AK?O#QFZ?MPRqzv-myI>dVuE;H z3;*oZmp%WkFpqnSg@^OA92~IkdPfkEAL#-s#pnf)K3k4@m4qz$qIj}X3kdpBASWXq zwC_{_AAwDDoYg5V*}DR#sIal+H>z=4z&Vet3I7wVIIG*eMAd*j6Acvz4QY|0ESjSk zftN?X#-Er8!B1uZ?X<52Av6Lmq<|0V&=nm*$WUGx;Q$`|2c^+#+ztl(DTRFiKP4@| zkDP>FA%C3#ywFFsPq2ds4eDIIm56Hol`(!*`AX3q zyDG6$NIT+2NnyhsfU4o$vp|4HK>w?^8Z9WAOTDE7PqR(77V8{2cHkF%Nr+uBNJ#{o7) z;7B;s1+1uuity42oAi#`J`Q%JAax07s*ZOi?gRVnK(lzkURa96@*LW)(PZJDg zN^z*s1va3P;!}54a;wo_J=A~<(w3oHum~;StMQeYK9F85)sUOtesx9o_#65S?vU3C zK9Bp$wuE_*09v$ppl21R%%2Ccp9E4cq>u+_|MOb*6N6mlMhd019}|6l!L@lSvG2h?tgAKD1Cy}`!75cq2&pA_SnJ!1Z{U<2f6 zr)W_%{-ur}q zW*MDDj`n{6zbnKO#PMRH_9nfdS9d{Zf16#5xo3fy*A#~SUZbSf9ro;fPEjl-2%cF8 zVbudR#WxM&7p6eoP}f65rc>NM2$wytwd(_6`v-=C8H8XO6TufgR(ul0XpVo42))IdrFBmWNkhG-aP>^~VSwv7ML;NJ^=TD?LxX7!x1 z1`#!a&!`<*pfV|yX~B(9hjlcSpYF{Xyfx(@tFE}{!ZJ7PmnKDP`_u=8o7#ItU-kZK zDvT`yfnQDm8B(i&CZ>g-fTP;lveNVZEG38IFHYE#;s3RhNOL@b5ojwIqCXsX=outK{oVOPp!)yuzi7|@n;?NY zKw@C5p6|3k_y?}Y#b*5KQz!F~rO~z1CDc(M6r6Ldomov5`>X<-0^~RRQyw)bJS*}^ zT!^c%>N5UQL7Is`zk;&Q;sH1!Z82?ofxdHo<;i{q6h9 z4y`!c>yq>?^_K(W5{K~j z^}~iD{CQs)_D$qJ1k6xpBn*fDD^3#lxmp*!vay_^{9q2V zx8iU)g{TG-gqH@uf0x}v7;`wuR&*Va>E1{$0JgRd#kGKz%+Axn#u=KT@tyR7{YX-Q zI?KQh^>E3>_&*!-q*S9pE~KfYzc`n4)7(dx6xtIw$KZ!?AnZd4AM1}5&GBePpe<{b z$ba8|=&t4hf*4xo>dL2!j4+RYfu7T$EVGbL=rZtsP2fitqFl%aKS$&LY}+1nZZ!eF zl_=mR)KTqdG}8Dfm1Du=LPZq{y!=Z=umS!vJoil>JI$0 z2!G{%vUON~z#nnH$S3@l-Z@Y?m=7Sm3ZQ)p=L{jh6ZwmANF7SR`N1d!PMqZw@CMsh zcue}_>&W{Nv<+V?C!$kTmfy4muV&QuBiAU}csXcV1|pMya~%0v+6dLt~sTNLV~=H3Vg z+ZW?@m-L9rg0W{4@DJ6;hh-N8!g4b+1^Y{(I^ds`H7vQHI5*&T8OCeV6+SM_e^$mn zDJ5G^0c-8+Mg<~hljfakRzNazo9-cz;i{$HStR@~QX>LC+n?UjyctvqRl*}~woep~ z?x;lUAp?YfWc=d~TAAeZTrzOlHTj|BmZ9cW#3mr5HQAk2;FvQPkqsZZmyc`1JF_w~w9?FBk3_=8f!l)-KXMJ$)bB)6vW-VmLc z^H5F(naE9+vw&c$y-k`1!GB5pi#tFc$k2^LZiiDFx4d;DQ~TPhe8+`i#o9zyTbL_{ zS~8XjG{++vfsQ6_s4VOLivM&i{1M3`WRThth2*17R9G7=S3~Gz*dLAFz2S68GeUK8 z_yx8DpGP>m5{7{vbAfFBeSsI9-3X^>jYcr_TWti@^ueP9>}{ZhwRZc!e}w;420Zy` zhW$Lhtzsk<(5uwB=}1xfXB#QhH-B3x989-BxYr@~g!bd(#tn|`0!-W>_u8qc&QQSt z8I7KV(S!Umk}s_e7tQg2M}TE|$beoL()XXT>%Zp6f9~3O(vZG&fxmTRNGIab#AH&a z=W6iqai4{J$WC|$Y2X<*79%eXgFy0$f5L*e_G0)QWOY#!31>MKEfDSBDc~O~xuoRT z=O*($ce>25pBS;z?5^?=8F&lO!YZ@S9w7uRNK*-u5qCLf&E4AaQ$lBuRlW;1f~Q%) zKZ_15_+s!yfw~eF1;D>1h30r9BLMjMBlZTyzqj;D5k~j$-^;KcxR6t0%TSaUn+y*Z z$S=|Yfi^y#vM%iIxR8uFCjBI{|CCVV-o5}JcP7CP5FWG|%h~Xk73$%ty?=lP@Aa!* zgP18L2$LAj%$eLV0<#L&58cnHPeJhB@e=LI57c~BlL(!U*b(bxCEak}q`c8*Qf`fG ztpan?r?n;;0WN*cT0~%1^Gt{M&hwd7&(5=Po?1PJSzBwXz{JL%`eSECN>N+(f)f8> z<22o13P^qj_&?b4@16R-asgJEVo|>KN50WcWQ+wt*1s?yC?l36g8!sV6ts9G2l(f2 z_twDgJXwlebXG#9f-1<&pqdJ()m0%HPzoTQLfr!@J3$345LY>C3Q$P%;u(Po$lm63 z>&!`)m&j2eO)wA7M+oddqEG}W2y#$(U$7_7C8QfSva&u_iEN;o?6kp${q?VTBA8^T zQvvDaDS+~+h0Mr5XSwjc=z+d0QvgJWy%X9#!Hu{ncOj+22=`t1+PPI=>5_Ho55488 z!Ax2ZOJJ;mMFyqdeHzX2&_|%1p8F8zS^2Sa2U~cC7l>96m9q#liohQl{A(vO_;(Oq zP+xf|mS1xDrpQBe@!6ZE9PiBnz}tXFH6s247Xm+00R*(~ZR$Z_2-kwWt@SAKpl*_Z z-OD~mSG#U_>;)>W_~bm-=~_od{y4QFFP%~{^)m5RSMjhs;3vKc8DnxufZwSn(!_)N zuvE)QgUGCM$9Aqjy4F+@n}2Q_A;7=ZO`79@k3dI341|YAdT0G;JG=3FyrS?bF!wAd z0)JxIGN)3g|6+$1NW)2h@y5FmsD^L~*pMRUjQ^7}lt-QT2*9>>fyn^=gH#OKkL4GA z+S&;Flr&;tsSNvtVnIYipKbiZOcQO}z#G+%cZ^NdT8_YUJ#(QH6wdF!j}mbsV9x_$ z%pHV)G?$@?8{JgVq`id>9P)Iq%=nLXs7cAfUx&)n#)uz_G6{Dbh)@30!63%1n?$P<3_FF)2-?`nYI9R1ff{)K8onnKKY!Vekn6XLTX z6?~-fC94Ur2RR6Z8>tv~xkY=D3T#Zd7smEhNCU1cff2U^|F9QLPXmSY`4(bpwZUIH z(>LK6CG=`1|6GcIBaBpIsSo%^q&_zLqWAQCmsOR!BiwgoS!VlBHH2!+TxUmXkD5(D zK7u2FVjQ@eBfQj@1?SSwAcqThu76CYkBN0LU%GV`0!g68g#!5Yh z|Hu)hliRGqWRRuRfv>YtpP5JGr+8N?)8!5SkRMzsgl^-fH}6_09_G;&a{yNud<28f z3k-)QKd1v4K2}$obie>Su)Vv4|G1>M8pa@&Jvn%_@sY|98*2@|u&g~m3M{RSB2qpc zEgQEC?IFWeNBaVtG6;o6|L(RrdDN|e95x>jT>*y&Ly@Tdmu>v1KR4!kc7Dmv#D8LT z0PXDI(Mus%w)m>lffF5Xpn?FQjZ-pU28r^O;krs71X1viw2hNfR9@>| zv;%j!GzF*zevEn4FZsRXH z0br&^4&d2lL>&{DWsW z$H$?K|H#OnIwe09`A5JxLW~yzgM`@^{?Q2TzIP;w4$v|^S!M9kEVny4jr&r8%sC5# zGnf5O_(ui4XL(oen$TN@+Qs`iTJQNYy|2rfO0P5moy4m_GA6yc_bDoR}A45{bnxTBiJD%{o{qj<&7< zb>XPv$_T_7b1ipYDnr}`k&AH?pGsJrWrH6X+FuyMH0U<aqZ7tF&l&8DE@0UjMiLfBC` zGX7D4BpBqKpWB*c8@R9?4mB~=Q5fHEV8AD>fx*>s&a{X6eb4(Hr(Hn^Qlx0oNilyE zK|bbIh|*fXDPO)zaD|7!^Y5U}X0y3sKB(JMt{R!%EHjcRnR_;&!_(~cP7AiW3GG{( z{h6Qfp#oPSt2-4C{z3KHjacQiC4)98iIlGHGX5j)$$}9mEbt}fO&khbY*c_KP_Q7@ z1&E8Xy+rGA@B3iBXkw@Dd$fMciml?#5ojwCLZ}D)Ltvmlq^JP+6do3~rDMa1G&{L) z9xQ)}B|q3(yd>2~Dsaq(l)re#(T}cGU~PkWb!9FggB+3yXx2c^!X#7#Do%(V5lUz3 z2CjF!L7jC9n3!O>O!yQ~k-0m(aBl~mdW?S@UK9t<0+C8ik|Us&f%?GTf|b}#>)gh{WTZD0PZ2QAHqWleh4IDdld%p`=0~b#KUDd7ur+A?4RBp z^fmd0SVd@+Pyup)R>;OG))RhEC|ET6c?eE|c2W=psYVy*q!7E+P9f^(+HFF9;8StS zrTaN^>i4;UOobnNmXTn|dIwgTd*Mevg|zUcm>S@FH{GOV5We^1!i^5T7Yaf@PtIQx z{`E~MM}3wa2QHyLDKhuakq)E+ECetqARqAQnE2Zj&G8|QKu?=z`i^{#okBAN2L9Zr z0HE3?Q1Q2BqQ^voOs0E1P6Aiid!~TT2P%LB_yGn>Ax$yx_;qaJfnQUE9D$7pA=C*0 zU`!S>VH-4J=OOtZUmNfy(g?thz%HK5gnR;1@;c8(CfCwW+CdGez$M63DYTz!HGR~U zp>6V1h8q0yl~DmwMC$@*0pB#f!ambET1NPI7UPO9s8BG|C5s(oKt2_=5~(~jPf4{I z7IY1p&(=_u!`KlD7Xtrm*yH0XzZ6vXFPh`S8-bSiIXLNGwE1CZ!MyX=EO7w&yI<_C zE)ArW6=5KDp~cOGBP#Jn2lfG;(><%ceF6XR8}Z=(AN&*TlNW5(ZV*)(m^^OuvN1;8@{ z0)B)YhMiizF!+ZP#*v6`TIhSa`MF{5?U0Ky-G&Iv4EYTD4 z$K)BI#R!TP1|Q6e1@+|%v_?vC1aOY@GX(z4GAgie%I z0LSiU7oh98;J5sfj=+^IXKUxjRudcqL~8`V;3DUMK1on zJEbB>(Y=!t4g81jP#BR1zOQ~;wqHE=i}mn{m>>}F|B~p%tgLxX?jAdwc32B-o*8)vq1ndu%TT1&JT^OdKVz3B~g5c2VHt+Sd177oQM1b!L^ z{Fq|g2Oj(42f~;FC`2esTcA-co~ic&G)j#|>nni#kev{Y`qSt53UDFCpyKSom3Lk- zp^%T1N8zD(dnyahchn2SYJFeqe>eqzAE5&vKl0F|(1Pc6dX?7aKcUyBH;PdFpWc+EL3^!%c2b_u=E-W|j0HkOHG_GZD*_pd;|hr;T{6_8 zC-e&0xNm$Hrh~2UPyAm?z_miM_&(4l1hXHT!{^~Dsd0?5{sA}^Cf9RNAt2k-%Y%sxxTHDxy2_ z)3il%{3J%8BX1FqqXI}k9sHjS{<)V1#(pS3)(^voo#*c!fWKqfiXA_9}!V>Zt4&a zQJn|`X-(>z0z9x6^YH^R;{Qusg26|kKVjZcZ3O(^mfpy4ihgomd=mvo?PZk2g09m2 zRvrQJLOv2-oSrW|D@EbLx;aT9Al|lwpaMWW2oH+DI6U`H2~bEL3H)RH**k&n@MG+t z`$-_=qupjlQ!`S%s9PXE zRDkdi;OCBjKP2hGTnGp15pLpJe|BEHJrmTyIVloK8a@Iy67rF~^^WhglkN-ij6h`Q z_RjqzUF8+?xx2j(9TH{Y^06YZfp8!V_>s?lqR_!FZx+eO!}fW73gh!jpVoRAnnGpq zpXT@pjX)>40HcijK|BH$%K?5CVBm;oCqM`jiVu(JJ(_J}_So?*MkHH7zqzI5h z#^yzH`v~X)oCn}31bP$=1_q>p!O1C^fH5lIKe~{x5+)H=MMZc9nsnHZFMjgOHj_F# z3yqwUffd+RnM=%*!B-*LcaUqWJr7)nEF|C`i9+~Kgndu}^2Gnc=7*6d1>ulwFi!>< z%)~k<3BMQ}!IcP)UUx*%ND=x*50R_CEG28*nlGhaS)H2v%&fVj6L)Oq%eU$P_=o4i z{hnKj=6DDr(9&j}neiV+K3w3QmjfsP`N4(AqYgEU=psTw)X@PhQCMiIQO^^!ErG1ud zM*h_$d_?$yOW%}gQF-EdZDR0qmd;}b_F5O_?xMB{1fErS%dY}PwYis`4m)~1YwvGFdazvF$!+c}AI~nix@6e7)4de@06FMo&kTQkm^Nk~7~BGpN8p~}uFrceGUyq9#Z83fl4RpJ%|=h+DfGUW)@3jRRFr3gd&#RJ)J zMP1I8lMzKbJGDcD(ukFew(yTsHs)M4GyVY{?ezUay|wPb`tRFwb&@$wdoNptecOst z8;z`vJ@XbL?~A+oy$xE?IAt}w8vhaSIZ5#mydL%NkX3{FbPU<$9xii!E&OXJR`NB} z;l4xqMRPo)5h&&N#d=o9e{0Yl&hN~GXKgPS=0hR-@L4$p)d-735F5-UD!}FJ9VK(e zoK3u`hVjSyL(9NFQ6NZ>cu`-NZ;$-8sG;#cHh{s&-tYr^K2=rG}DuF<+M%J`1@Pv7_o^b`CeOjvr%?R;nCG4%+r zNAb&xUqeC1wkAavE6d(}retU1zqCG5$Vd9@a&7*sGW$|jn&Y920E>(;1lElB_&+AspgejCIA;~uWvGMprDdLxpYb2l9Cs(& z)Ep0L1Xz>85`sw_$v{G+=WDX_u%H`40{o;=68mQY|3W@bN}fc7;K|GgpbPMm!N68K zwNJnYMUXBm413U68^C>Q1Sv8!rP&(%q-)OtXCn$YA*);sEK#|e6`?J(YtKN(urD+6 zTdvU6>Kl>Rwl~Pp2k;+}C5%5`C%#dS84wr1u= zu-|44U1UX|t9uLIqV_kXZ_V+bMxZC-&!#U_;0Es>o&hRg21W$8x!HfPM654yfR)$0 zZ1yP!{7-j!)DaaRF2u^L9@H8N#zbI549JfxJ?F<(fr+C!GdZ^Xi8js=4wBQ&o{Fs& zRdIE7A(wX~AfF9m`Vp44rDgncsw?0TgXO;5y-i@s5B0=sh1x>u@N0y*^Un};=DVRT*z<qB$Pe z2zcieD)9d8KZ?Lw08;?q2iq8P&@~1;M2A=!!-YJ`Zv~Babc3Zpx*-JsRDPksf znEMLD16y(c&&Qb~nM-Flg;3Z{90o@c@0F;|TU^phs&N+-YTqj;5ZNU zyj}25w1)=uVB^_)R`==&F(s5yKFc@sEwJ0MyNSJgxIE}Gez)c_DxWOz5o{mKc{UmC zl+)DG8<05V#&sd(R3^hBAf&73jup-E5Jv#VkcFxriGPq!ov2Af2!;TqkA<)jvyb5U zepieFzaX9mhgYK)c641h)G!`_Ni?z7lf^ibB>IMPP|b>J0lb zoBFQRp>q%al#~X4Pg~AVEA1LudYc5WN2kE*LY7&|yYiM%RC4W?@g5cbA=*h#a5uEt z#jJtsglC1JR>nVlbBWSZ=0BW0nj=NeBVDI$|2*g391nH`;NgMoAEE*Y{NEG#Ax1j5 zrZ;{tabW6MH6}$1Kn^N^%|`_QKf1uu04kt2EdZpWmx;l~uz<|4FOEGqYGG#vewGFi zegsI6C?YK|6Sd6qkDzO5YSd3IZQ?(r6`^hXv#Q(H0xQ49iz6)OqEOI4gFvmw-3% z>Y)OXtO$R0npO~iI!-8<7lc4Qd3cmx5P^S(ga5-AA@b=ug*3+l9|5+3Vc36={RjLJ9wa<6^wtQp0G@o~IS^(r&!oUv1Vvyk4Y~lN zK|U{(&=l}{c7#FHLc7i|jO@K<9XY%M=o5gK2?b!l>7=;;FO?Yt!Ijn=0p6%EHnw{P ze>bOPUJkDES*p!NW3++>6t|*SG(t#A5DiiWzi!)J+E=Lh7;tTXt*KWOh0 zFoC+*dIM3+KKO?M3G?=aD@RnIK#&^rHb`^GVxYKkZ!tBM(k0;O`9(b6&V{_% zqrH-auce*Znl(25BOPjXU_%i+jX4Wpt%QeJP+szyiKe<%sxeQoEKZ@1Z1_jC;i2!CT0#F2J`ToPyy^bHGw@qh3W%2mX??f%8P<3 zob7vE6*9wyeBOHl{xSaGzq%ObCu5#Ga-B4@DM{`sx+9zGu5bu5k%x;c zjp3e_32eZR-x?IW z$wZON(yCX>g^&2{XTGR6T@%QXQgkIeTcl@RIz@9lx)I=y$o|RC&Xux&1<3*JVfL8< zKsX_cf|2pxSCE!50n$X4(xlUsF2ERJMCb*`2mjPT6m+FmJ-z&p z1?c8@lq1knaFRbR_8;#R*w3s2fq!6(B?sFG_FwqV@a9x)Edbak4m=rSi!K0r=8@12 zcnHh{o&XVIx^Tqx`A8stV37BWTewXJ+K*-SLo~Hd zp)w(;K!w-o{WkE8xfc%51rUqP1T!c|?JyDempcjk0O2UdWXSBZUqFBz-cFd5DS(6$sjcK zrNs8l^C?8e4uN9rV+zm~I7jm3O8lW1k@!ZfDS-Kf*0@$nV>?3*i1reV7kc-`|5faW zI?N_w?-VW!=~~ekI1C|r)dan@!QZ~as#>F+vFlHC7X|YnQPv|Ib4@*4!CsiBg@xP% zL<%yKeqsERPL@E1j+JkDe09_zYh7=YJ_>m`o>L@Qjdu(7t5S5b%KWKl36Z(5;Eg0P5htei1Ul`|J zt+ic6V*o#wUrb=YDp2Veu7GxH7vLx_m~P+#cZuZe49=k%!HE!15ehffpenfA7z*2jl0e{AU18K?s{xN>V3-3#5M=TbVW0NP6Dr9s@946V@uS9MYtQ{eCBS&5q>RG6s` zd`%`4CJwxSG;P(c?8hy&8T)p0tVE=(TTzpF*dx&KoIV#+Krh6mw9gA;K?Q0i1!9sw z$Oaq;5$A`cK$|hASanKJ0aODWi75cK5A6ph3XCJ&qB9g4338I+L;xf$TJ20`_IY*b zY85!>qav<5gM2F-GLOK2q(pP!pG98be`D3<@jzF!SU5eIXoPC(G}r5?;W6Y5a4lRW!$A z83B2DLs>b(hM+x}%}XLV`iM>ThDj<2KVWYx{8J9EP-+orVQU&0qy=C_%AO8MGw*xVU;@E$UCT^-->)9D^qv$f_9Mnc4#up3zW#DY6`)agP?!%qkid|4TG*|8iTk`rOi$`4}}_l~yl zPX(ko9>oZ>{6t}`g&}M#7#57N=P?lgW`iI6!^|lZfjQWIoaa5TpLo`w8^*S# z11cXaw|I3SKW@H~$0xL31Rl&gc3S}%JX60Qg+gHrIT*bc z%@krdm`89$Au513@kMQZLkskB9{(yF zrQ8c$ll|Wt!y_4IFfZ8CCWQz$T^NLY^LdAx=oLH-8Ya(|Icw)wE0yWYLFz`&naD~$ z9z9vi)kE-~Y(5`pb7t+>I76Nrty775n6$G928^6qG}T+-~lQK84$wdtHiX0qJiOBiDVUrKS%)$@ZdvB^5;VQa8 zS5H>wz18h#&6>#TM>o~gQMU67_n%7;zRObc4t+yw@bSUF_Lq+3{EGGEs9Lf{W6n&YE00&sQx zeUZNHcI`ml$ncojCNBj)VSc5If|+B(iL=PomUAcY5G+FQsSyYXAP1$arLv<2;sI`- z`Mu?&P;0F*IhdnGURoYx%RJ2rc+IT-U|pjc8S5b7CMFTs6q}Stxr>|&h|oDB|7i8O zN;{am=!rVdEqbOgBeOM1w!Vd%jmG7zgz?||d(Cu}HoSGRw5O!OI#_#X1JsCA5z)OUgjUwRBW8k$2CIZ?c-REA$B!hU4hSmH z8@!1BsqsHE)Q?8~#gU?&4fV=*x1zDdh<(oR6R_I5NXtZ!ypRX^!J+P*<#EJ@JzNI8 zn7VJhF8!sr5#I&CBQ(y}IXGRrgd2@*3Mym1?X;EgPX=j@kID$VHE;;1dk_D$K*GF_ z1IubDTY7|_p@|UuXOl3aS254!FUw`d{1Vjxkl-H^jT6cm0r8q1 zR8O;L1QHvEL{28g|H{Uhy8z3R@xS+UK*_>|8-X7|vmjAGoyX8ny~-Pzm=4emSQfjr zdAgq`J;}3b%r}yhmVxiJ%+m^YoToUjCZN7+)=t|t{-j`@l!Huje1t}T5Di|cq8uO) z=~^mTOQr_SvIkyobsGtUii>Uyo29XOwzGT{P_eqgxwoHn9p{NfWDynAVe4h$h2NAo z^EQTByM|B%)}+vdw01Udvuoca?zOkN?Q#i)8}$UuVshbj+zY{{z{SSqBRI$i;715O zLC=!$?@FV!=f7hxSGMyL-w`9wcQsDM2#}J$N$Z{>e1!h`uj5zYPni#*puhZc0=e)H z9!d*;`k^>EEC~A#GKGz?S@B-*Q$z?Me>VPcJWrxMKpnHJO%ZIOKqKs*wpdwnP*Id= zCmYVoA{3~Zt4$VIaRImmB3}SBBHJuSGZRwoMIpD#c?iFz7`q#A7#wO`Yy>U9@`Hae zFdyauMWU)CpZ|p3+oP4NPLV8m%YctBPGLI_0vRN#QHO(%&G9%#0G!A1@iz)yT=uVi zQNqDT@DIqD0%RnS%6O=y0=NLb!~$8*WEiY&1i!ZJJopzTPiayhU>^7fatH=l3%iga z^CEUE2&h}d)e!}Jwzlds?_}eqJcNrU&NMXkM6+-O+D8sf$#6+rMGNTQ(Yinh6_BNZ zRN8CGN;FHiJH?g>O5XHI~Fkb zD4@bn6m|{czULIT%s0|p#w|v^DJkU$g|$;I={e8G(%>(e;}MSlmjCbmynYP&dhabL zyaEOL5Aw16WKa;S;tTk%(nO%2^qm+I1Me|7$sxt|%Fo>=pz;wF0Pp}WSa(bT;2&QY zQk1j<9YKA#ibl>twH8=6etck-5jf8HU*?sCL)NveCxV?*@?3%}ybQrZD_>6UUHpm{ z8lXc0|H#eKCSM_hOZXTUuB}Hjg{*Rg={=3;6%FSp9{G{*kIjD%{@KbNMCc12)0c!5 zux@)tfym=9^0H+zV<800v&IC6$JJ$>2qddyZ%FS2e$;C1=LjJG_@{u7*?|g}dg3$C z5)|P^oR~^z6UGux`?A?m7Ix!44oe1 zs%<$TKV4-yQ8Ka7z6kcPdK_DpRw4XM0YDl>0M!Iuz&{TNs~qNYQe`;54E|b#C&&*k zB*Er~TF6&Ks4Fw5NdYii6zajA!)N3L#Dg;^0$k{c|h&=pYvu)sPEd zvZMtvuG-70GcTYx5OuAc&D{7{T7U}h_&L#`&;mZ91&HnrfWhR%>CRKY^iHRq?)(b$ zk)gZFNM1U#5$45k(80AcN8z7kGJ1%B|KwS3GWeIiklPKd0t4HJ!b8-uM{r9i{JsYj zn&ZKY04ji;zlD8JhuZ=3VIoLJ{M9PI389yLz`jD1Yz-|yui-5Y5C4JKpbm%;F4bU0 zxJnlQJUT)Mw6e0`6pJQt$wAWu;K!<0d%Y%<=iHyn9JCoH){PdV#~b~d*P#NWp^4xh zBToyo1FD%s$RlWtRD(|L%xcz|HIYH@aLh@!E~LUi0{&rWQfh>fy{87wuB>ab)E_mA zpa^Xvzi_7GJS9=sqV(QDAr+9wlmI3bN5h+)D8Y*{F(T> zb)^CdgYa>fUC51~BJy)ekH)aQLB8$G0KRG!IBA6W58D!YenuF-7?**$00FB|bSyvM zkJsdq$1lJI5ZOS{hK|p0YxHg?V1IV5Ekit3gLeQydbZK!cqLjySQwn7OM`Z6{O@ef z_X+1BGbju2rkui~(`$zP*`7G%JM*-Io0>SKaOJ6IYF#J|;MP6lcQVK+Y+J}s=pQM= znPLH*IW(3wppjyd-8-sTG{*xN0rUbDxH~FkDb)U-o>gEd^MwVD;6Ew=&Pyu-%dZuC zezqbrm{XTB!0bZnIVe!o{*`>sn8DSD=!# zr)@&t{!;O;|61`+e>v?Mq9nQGbKCrlfEwIh_J8X*)zLWLTMH?Tqutl*V(%DS0xL^HjDL;7qY}9={1CYS+(Jg$lIL91m{< z06)UoD8@?bMEs>{fe^b5=TWHh>Q$|?GuV7efRK$pB&mr`;EZjW%5j^cDzAJ=J&}%JW)6x#oq5XQi=i{=(p2OFhN& zcLKB6(eWPskLsk(?yU|~IOVfzUqU(fC*>mzQgdTRgFG^|mi03D+l3a65i;&Aq2oKk zQyTvrm$0IT8R@If9dG&LOQrBat#S=7HEE|g9>xgZ4zMGXxTyX#r53+5We@d?m_mzS zZ0GO}h~mK$zZb3!oL{8^Oby!hX`5gB$rK^qi(j~?0a2V#ghJpAx4{?atPD2p#a;-% zL5mf-Kl)Y@78KACYNlnWnXU20m#j0}-(?tYz2W~Pt|i;PSBkg79E1v}Ut0EOR zr)3Cf&B154ZgzIh>@N)dsqfx4R$ETXlnC44<{B9EFl%9o;O09^Dra8{GmX2 z2kd-?-cW&AfRun_do45ykiMK07KAlc)Dd(cQNHj4n0@VqW3}#ve`2b53d|IG8x`Q; zD(Y{tGfQSI@S~WZ9kY)DR;R2EdmHm(W<*Eh-!qrg0rD0d<615`xDi^L-kSpItPx$? z{FbrWHqJ|zP+sLi$`R^xJa6{g;eK*$m_zkmulPth6uZ+)7kly)81UwJ2qVBs0c0De zK<-=Y$*J|n0<=I&an6feVB!C)r%RXxpgLH7`33Rf2p&=2%HE;^=mJ_(?Y#4CZS*dU z{H5(G>B=g=DQ93u_!@zK`~r}V{SRlEnL^;-8>=T<>_duJqFh>KbGV64%AWHvgRm={loU53d7ILnWO3rgwX=X^bjO{=;X_+PRoqU#$UE_Ru&wU z5y_ufDQKVagE~ehQ9b4(ne@Hc&e8rj=6!Dqzm*mfm6A(-Nr51y56()z=n~D+KItlx z|8d5D;iKh`Wx~H6Ann}K1wKwKbI%=1Hyb6hjQ^pX{hqI?M1;V9h?;7S2QmWuE!yge z@IO`v9XD2iO}{Ui2>&3zK7EMsXE#2)=%NP_Sqlb-TIAi@8uQQ=`*Q;S0PpC+wZR7d zH(C+aBf1+~;I$r^hw#J(=4YFH)&jj zCZY@2{F6i)L`pRZtv>R6ms!6kCqFZWE005`NJqpdBxl3XB zMhkb3%-RjkZU2X!0(y2UN^QPkpDnHy6Rw(Sjt4RVeoYX4!9Wpm#F<3^xqM!SI#C2N zeed~!2=Nin^2o`^>Hy#&`K<89?{4U)+rO!$DDWwF07xv2ij#DT%E3DDj-SjE|5uFk zJ9>sJBvH0S2M*Tqr`k4Ze8CYuJpXgBI z4i^vR;4jO18AOP%3-iYB` z?VgYUoCp`v$khQ)@`1^doR{+8vvXsZ?yXH%y2g3iux|_PJP?;2BI_9WoZ?uy*^^)G zvQ<-jO;V;URDcw9NV5zz$9WbQ-qVFzgUm8na-wOoIUdFcXi=c8iJl+~8*GdIQXjU7$=Ocm58o6PieSz6ubiDc;9?Y($elfslF6}Chr4>=IJ9c&R+1qx2Tgk zyhQ}Kue&r}K=JSnHW9(hk!q}M4*&+{!!O9pjDL_1O9Ai#zb!VIFyNSOP=SCD@Q-0+ z9uW-o7B3L!UA4Px(${jC^~?f+(2ReaVtJY%A23rhRDc%3fRh30C#e8LNG>qoXAPRl z6fzy`gh~0fIVF?itZVr?h}3H9Nu>WG_|4LxC~$S`fBMzDo>ich4QI~c+u{Dy%q-lI z#%Y$622bh?f)+6SbyjvO#%UoyT&PNP2=W63(#ku^)f^9M1X}71^FDiZkoHKi&4|nZ z@<2WxdEdg>63FKxzcLAd$0G*+&o)~2A{E-##>U?1E~jKD--r$|(Igf4mNL9MML1a* zR9n~KTIw%t_Q{{53z{JCAh7LLfv(q}1Bxk6opVM$mmqvRiz8J*ifDZBGWazG1T4Fz zLzPqVQ{R2%p12R)tJ}P!yPyjwW69KGE(8n0hmu=8(=WQF8_^olONCDp3Kq9jj z)cHYGJ+0{nHud(-(ou9OQz0rZ@+H(iWqV5_YjdQlu!pz8L?DpIU8qK7?tU~iGUj8l z&=!b|smQ?hD$PSW37oRYRi-@@a(3;exQeEnGQThdph^h+(KN&agmQ7#$cOtyWDGBu zmn-t6^w?dMZ`aiuS@8l01c?P9&G7(60Px3?Vyq66!G?qC`}jW_^Q7Qkj~L&Z0?-1$ zkMMT~(!_9{#;WVtp%~Jg!3-e59{+VZqIpAfm9i>?mD}L4o&j>uP zg?uIgQry`4;19H;5#V3U-$G%c?(d5Hbc1z+ma_>AB_23)`his&MND| zEOU>_m>d~tgHP)})X zDRzgG%W6~@d~o>BhT4EFl=cNtEVJH;$K~gQ>bt4uWbl)6i%XWPzGFnjv_yE-3@CNm zE1tmZ*cy=<@9L(2AOE7`-{6+Z({5Ct_}L!Ve_k2EzKA&ZlVR0gQi1q*1HbTZFBtLz zw7?`V1DslQ#YH^{KY+8`3mcrpFO~^C*tRe7veDWQU1t0PkIJT!tEjv)$)Q1TNQ0N8 z0$`8!W&H61xbMaGpR?3C+|#VR`cTo0ym3MsJox2{FAD$K)d}|aMb}SB<(c>>R7qdF zy`*t&8bY%n@$u@9R6syJA5qD(@DDZ865&Zpgs1>_XEr2~z)SEzyPnpst#m!Bd6j3J zw!bwWo8xCR0`Zv4-ID?>J=pt$RN$rva3L%|e|MI*06+W(UEnJAKMU#`K^%R*H zg|t|_HsDuADfzu+X(W_JMc4csqYYO%DXNJ?HJ~m)8vJ72po_~7iZua0oud7@HEZS@ zxdMP>)fgXv;7oOpV*()u>S-yqRy5}Gj`@gvarZ&Ov()Wq@m-_>e2g32G>#IgA(USw zsKBrNzP3&&Ch&FX0(ZnG!la-At-f#3%_(=RER>UJj-Sy8z<=%@lZ-x;igH7EzW*%n zZt+|Gabe!fiFGXZ80vdhom4@y z39?Ui7}|r)j}jCObg^yDz#sELlP`US;=(<9n_I`&{zBL`7g?+~P z)xbXbBPks?XW=7fkxNd=I8Vn26!$$iScVeIuov$_i2SqFN{{vo@_pOc0q;3eG{-|4 zfu1Ju?~8vdKTE)vdW0#U2mbvy03U0%$py{<$%y-eCoj4eCfhLhUfnTp=hN>#D+0>_tcxLwt0n@>9rHed>xVC(9ih7fY}so30L(JPMU5 z?E>pb|E`1}4B;2yzm)JO1fBx4itce?YUG>^eq^rx$XSFuHzGwiOG$im%78F95gBHR zWCBXWk0*m_-?3dZVV~mRA5|g-Jj3`B{)c&MC=&tsKKQ?C>c`@-286|f_bL!%zW}Ac z2s1AT|7Zu%NB|QO;GukJGd{OEY;D{3MkA>+0@&GF5EoL1OE?8+<5ZMWhY}owlZX?Y zk^F=>S(3`v&X*KZ3af;q^7eJvfUm0NT+4 z!a?{E@F=*4@W0Wuh!6!_LFqX^mNhdAS{whHZ0#}Q)C5|&zNQZ(N^XU>kLL_jF5K(Z z2=`?cXoGMroTRNdVnIC#iaxlZ)FSMJRkJb-8>Hvs>Q^*lz59@n{bISOY}`@iY-)DR2^|bp+(s#((Xn2C#J?A9!Q=k!Kre zL<9rb7{fkEQgi`(h)`3Lgq0ATpplw!6|K<}jZhLTU+#gQQ+z}?OP+829e<=I0{%U} zP~P)dW&yMSvl6-xi0;Cx!0~7d zDR=`O0FSfa9JE8`wKW=XFp#Gm0VnCxmAS#fJ8ed$KvPqNl`avy19EFuBM(+1CBxaM zK>lRe+Y!L{Bk?|>t-4X-fgU`w)Y4^EI?{RvcaPR+XXn;vftoaU^(oFG(Rh@QQX%rk zREII?ItWIJO(;n(nj)D3x<~H@+*rHE{(|%YX&24$m`0#u<}lY^A83JpV*6oW1OGss z8G(6U0YGye(ohgAxrp~rW)KP_y&yLJ4ZF!ZbAy%BsmbOPro8|tGG z2neIjB}4R_`i9jN-C`2iDCo-FD?APmI5Ov{wcyL9BQ__<;k{b87U5$^6q0f;+P_~I zx1%zr5MPMz(1rZ_rHccr03{<&0rEk3r6lZYuZR}Ys3x7d!GH1ij;=7Q-_hP^g%ryM z!tnwybYPy8_$T;hy@@FRHv#HPq)02F3&Wc~{YFy*$OQk)1>}=+x^|tZW8+|BY4Goj za8gv@kfC@^CRdmwzs)$@sWLpj^j3Vjhvy6Dp(hCVPv9R2dqjTNlR$?dErI{?k`*DE zJ?nV~ojPW{i<%T7v_>^Dq){OC0hmywMDCbnZsxzvsYO(HxI( z1WJW6+Dpaxfe;3NmQ`TkkNoMuKUx5`@r9WhSQ;P_c*BWQU@LR2xqvrL91Y-==ZM~^&@5YSzN;BW;g^$U3it*lw+u{fH9=?(#?(4Rvq-JiZQ+&3 zQKcFk3pw6vJX)hc>fEXw@<&Rj>{GgtFQ=c325l1dMBs$r9}_{}DsK?dLjfZ@!nMI) z7R~WkN1!c~vZh(WF)ryZK86K(>YwGMPXIukzrGA0_Svuj`SOLq(n<6ikVxws1)+c#>HIjMa)4lARspVg`s(TW%>;7s_xpSj<@ zn^hfzrbusRY2SI2SKYfPEKs74^yeroSfdNR93rGSZtZW>cW3BB+1UT$aUU)J5r_Jt z4-ETJUJ(d7M9LIE3R6N#xC%BLWU?->lBwh)<$xb}Bp+eoAUW^=Cvyi3d(ICGi_(hv;3N1sYu>6oEnw3WE&8cXr>qbbc~3G_$+kU8_!u>* zOnC@-#P!u5=TXVp4iOBBxevkLk*mHo_=jd@8pbqVRKUGI%JB7UmA{FGm%AzA*Sl#wzK=(*Zc?xrB6REuc-WHG{Vh znOxsaWc$0C0!s4@ncRV4Mk8Ib?v*io$_RHKgx<4-3_@X)#91mMREUp}9`hwkVU(P7 zQ}|EM{0EhX{4fH1Wz-P-Yas*QeC?lFn`FJNGTEG!C?A1i*85 z>^V)L7jO@{K}H);sR_oo_Wy71d|@2dt~hKM7#L}*%F-*aRARLxDl#-QD2Vh_DWD*5 zNTrlK1qOyxTDYu%3kR-LvT$HDXyB-5R5Y;P?{|DXp03mD*f0>c6jLh2E*0 z4`}gH)+TL%(;n=B$~!Ypc=3rl1KgJKzb__Gi)RMyGb96{2Mzp|?~6mij~;v-FzYqg zjLBAi|AW?G$IIgOxXG|Pu^nt-l(*A6r?b(?ML#bS z8=;OSDQ+*|A2EI`s6QKKcDV=O7Vk;#m||MNJj z7v4nRv!n^1#D3QZ@RJWcntbvQan3P}bVB6e^`Xd2InOmM@ZWm`;9&SQ_>HILw=O>S zgYHe8;9HT;5?k18@_!}p$79s)-#KXN3N=1lp!(vL{{S!ecOks-3~?L->cZp%QFs_j zZy@Ok>O?TBRj~#5x5RACdw((p+L^r)#cA-*L^g_jj;hLVP#Lb)*Jm^QC??s(BuCUQ zraDr{Gs%N9kS%0Nj|fLCG&Et(oF&V$U;+r(v&)Yz5pH1bN=@%)?BxGoo=iYU{;Mn7 zYFBs<)tjSgpbS6g{1FW*i8Y0xITRAlsuANVzy_=4ivK^^bzvTshvlna=Td}A3-OTE zXbwzWyti*Ji)iHGtDGl)D|6s=@Xesbg{X7`Cp0380RO`bauV5nv|LI$yD(4aQ(iK} z?i7;8l^v{!hz!cl)p;NsKc|*YevwB$+ppUh{`Jh3n<}>})WFIOl}GtPRC_@V6A=F% zEP;nigkA6ePU@|zjS54GMEN|eLVWw6I(A3$JCjq}5S$G!V%>Qfd*m-y(B}+T)nU*O zBmD5%SYmOq0;ql}coTV^3A+#8jr7Pi&oITgh~rVbbN$BBx#S<*2u5Oz17rXOV+FPL z`%S5p^B_oF<#x3i;GetG7Xc9b|ET8%Ei{$TTtlC)x_tp-5c!nVat7AMo^#t$_>)2* ziI6zOISS!xy)sz0LCZKqo_@T7Jfcpctnt91G5Cakis*O?$OIlOejina`6cA<R4h za{t6te{o{8xZ+JwyNCbQ!=HBkIpSP_-@?J81W<+OR9*pltvan-=dk zN3Z#CwySfekG|#~4&mXPAETRCNqg^V zuWyV;R?FuqJ^!mle|osaWb&`S(TZx6guu^S7}~&B8+XXUDn1MupaPi#&$&qLkPNX) z1o&I6qRbjTsx^~>a2?JiLdr=^sc?w%Gd!s)mUtA%BiP<04zx;nnpuZa#`Ka+c^+S9 z;}oB@jw*n|onHZGcY^cNw0vs*&argot$mYyxz$NU8M%55fG$P-M$^aM{8h`0e8a23 zDdH9|=F-lrfTM^{f3XhWr$rd@gl#}%YEg?t{6C(7-s z(g6Q)_~c&?_W1nvc3#>!w;mW43=hQ|$c)sb{3p&uB5^S4UC9tvW_LGMx&gIwncNgZ z5U!TWB*Qb2?Q6)PI$Rn~r-rWGl0qC&x=kQ16^ZbVtZf2ajC>0Zc>r>JuK>NNlf(A&!p6mM)yZ6{;&k8}xSGFIsa8x?p^CiM=zoq!U4cc7X3K zm2(nbc$c#x138<5I(aakldo3WMz|W;h{Hc8(&wf7;r4?3h%a9~ckZMHLIZqy0PkJn zAL`OD4mLqf?QiC~!4v+m2nIIXcN)x0L;B<|Df8g=rOoL7XaV+*ViHghm;}+2k!BZ| z*^TD2wlY4V0r@;K=_7KP0r$?KvE_L#91Kb9}UB!)&QYZXX zZr`tg#V1)vsV$A&n@z>YPkkmbfG6yV+e0L%gSUgG(z6f{uK)^US~6)1V%!C#G+;yQ z(E!7LXUGYWlZB%g!rDGOiR^O9%J~`3!zus#w^ACPSU-9G@~w^TgU4@gNAg#ldgw-v zu1@}|+&)VK%Tkxb5L)vO=bht(VF-jIh8)z<%$$0@x}s?{c22;!DkK9lLLm>~J6i;7 zQ>sUtbau}Ud#4|4BkP#j=}DJ#@8a$2BQ<-E?YXfPY;A_zNnI+ui}F&da!U<-h6VzA z!p4ljIT3`E&NA`O?w}6`e7jd8j3(pU>Ro_;-bE87%VC8_4lC6a$r1D~k@psEY=oneD~QV6%E z4*dEeo6%pQQ3ym?TtXfZCH9>F#v_7%P{%34HPTm^9uy%3$WInfugpIwbmlUV0b#Za zArqOke9EK8_Q3z%!mr0&aZ9>=^(++6}*dvW)C@H=9-xz-4TSb_1NOKTF z(O7zgmPuA0!f&U{hj|9@fb^2VqVH9KWndm&(|7+GoAH_0)ja6cfKa!^Oqi{M+r#*! z@$0DkZs*_Hmm669xR0GzOAX94fC<1n@K4g2K&*gBz#kb%iQSz#VOg*jfEkKRpDay7 zbdWLchVf}C)j!BOs*9#cYN$4mi-)e=`KuiJQoJAR-gC9B7BErkEAS&t5q=lREj94v zG_aVtK){9-fFEJ7*S*B)JJy66Qg*JKx_5wA0P>q}RU_b~5W84}J~4LddG|-RonG8_ zdeQ6^CMoD8Li$ZHs7_ta;-BB;`uucbSyZ{D2EMokz^wMC+iTkb;s0^gV6Uk+8kWD)A(ilC*vk-9 z)DO-^W+GfFcDW$ZSV*i(O{8*U#h=_#13#?>mNOt>66s#0&`tcG-)dL|{ZI%cIoOM5 zLUM+17W5*mmk)|W%w%0kc=8jkOGt#wxuphv2^v_MOw%j=5sK(~v;umHSp^IJH4PcT z3IgoNPqq*)Li$h)fumex?W--ECoW5R Date: Fri, 3 Jan 2025 07:44:03 -0500 Subject: [PATCH 28/37] Update Python Version to Work in CI --- python-restclient/poetry.lock | 852 +++++++++++++++---------------- python-restclient/pyproject.toml | 2 +- 2 files changed, 402 insertions(+), 452 deletions(-) diff --git a/python-restclient/poetry.lock b/python-restclient/poetry.lock index 3a1a6c0e5e..57d083f018 100644 --- a/python-restclient/poetry.lock +++ b/python-restclient/poetry.lock @@ -13,24 +13,24 @@ files = [ [[package]] name = "anyio" -version = "4.5.2" +version = "4.7.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "anyio-4.5.2-py3-none-any.whl", hash = "sha256:c011ee36bc1e8ba40e5a81cb9df91925c218fe9b778554e0b56a21e1b5d4716f"}, - {file = "anyio-4.5.2.tar.gz", hash = "sha256:23009af4ed04ce05991845451e11ef02fc7c5ed29179ac9a420e5ad0ac7ddc5b"}, + {file = "anyio-4.7.0-py3-none-any.whl", hash = "sha256:ea60c3723ab42ba6fff7e8ccb0488c898ec538ff4df1f1d5e642c3601d07e352"}, + {file = "anyio-4.7.0.tar.gz", hash = "sha256:2f834749c602966b7d456a7567cafcb309f96482b5081d14ac93ccd457f9dd48"}, ] [package.dependencies] exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} idna = ">=2.8" sniffio = ">=1.1" -typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} +typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""} [package.extras] -doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] +doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21)"] trio = ["trio (>=0.26.1)"] [[package]] @@ -182,17 +182,6 @@ files = [ [package.extras] dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] -[[package]] -name = "backcall" -version = "0.2.0" -description = "Specifications for callback functions passed in to an API" -optional = false -python-versions = "*" -files = [ - {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, - {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, -] - [[package]] name = "beautifulsoup4" version = "4.12.3" @@ -230,21 +219,21 @@ typing-extensions = ">=4.3.0" [[package]] name = "bleach" -version = "6.1.0" +version = "6.2.0" description = "An easy safelist-based HTML-sanitizing tool." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, - {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, + {file = "bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e"}, + {file = "bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f"}, ] [package.dependencies] -six = ">=1.9.0" +tinycss2 = {version = ">=1.1.0,<1.5", optional = true, markers = "extra == \"css\""} webencodings = "*" [package.extras] -css = ["tinycss2 (>=1.1.0,<1.3)"] +css = ["tinycss2 (>=1.1.0,<1.5)"] [[package]] name = "cachetools" @@ -489,51 +478,51 @@ test = ["pytest"] [[package]] name = "cryptography" -version = "43.0.3" +version = "44.0.0" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false -python-versions = ">=3.7" -files = [ - {file = "cryptography-43.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:bf7a1932ac4176486eab36a19ed4c0492da5d97123f1406cf15e41b05e787d2e"}, - {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63efa177ff54aec6e1c0aefaa1a241232dcd37413835a9b674b6e3f0ae2bfd3e"}, - {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e1ce50266f4f70bf41a2c6dc4358afadae90e2a1e5342d3c08883df1675374f"}, - {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:443c4a81bb10daed9a8f334365fe52542771f25aedaf889fd323a853ce7377d6"}, - {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:74f57f24754fe349223792466a709f8e0c093205ff0dca557af51072ff47ab18"}, - {file = "cryptography-43.0.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9762ea51a8fc2a88b70cf2995e5675b38d93bf36bd67d91721c309df184f49bd"}, - {file = "cryptography-43.0.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:81ef806b1fef6b06dcebad789f988d3b37ccaee225695cf3e07648eee0fc6b73"}, - {file = "cryptography-43.0.3-cp37-abi3-win32.whl", hash = "sha256:cbeb489927bd7af4aa98d4b261af9a5bc025bd87f0e3547e11584be9e9427be2"}, - {file = "cryptography-43.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:f46304d6f0c6ab8e52770addfa2fc41e6629495548862279641972b6215451cd"}, - {file = "cryptography-43.0.3-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:8ac43ae87929a5982f5948ceda07001ee5e83227fd69cf55b109144938d96984"}, - {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:846da004a5804145a5f441b8530b4bf35afbf7da70f82409f151695b127213d5"}, - {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f996e7268af62598f2fc1204afa98a3b5712313a55c4c9d434aef49cadc91d4"}, - {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:f7b178f11ed3664fd0e995a47ed2b5ff0a12d893e41dd0494f406d1cf555cab7"}, - {file = "cryptography-43.0.3-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:c2e6fc39c4ab499049df3bdf567f768a723a5e8464816e8f009f121a5a9f4405"}, - {file = "cryptography-43.0.3-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e1be4655c7ef6e1bbe6b5d0403526601323420bcf414598955968c9ef3eb7d16"}, - {file = "cryptography-43.0.3-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:df6b6c6d742395dd77a23ea3728ab62f98379eff8fb61be2744d4679ab678f73"}, - {file = "cryptography-43.0.3-cp39-abi3-win32.whl", hash = "sha256:d56e96520b1020449bbace2b78b603442e7e378a9b3bd68de65c782db1507995"}, - {file = "cryptography-43.0.3-cp39-abi3-win_amd64.whl", hash = "sha256:0c580952eef9bf68c4747774cde7ec1d85a6e61de97281f2dba83c7d2c806362"}, - {file = "cryptography-43.0.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d03b5621a135bffecad2c73e9f4deb1a0f977b9a8ffe6f8e002bf6c9d07b918c"}, - {file = "cryptography-43.0.3-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:a2a431ee15799d6db9fe80c82b055bae5a752bef645bba795e8e52687c69efe3"}, - {file = "cryptography-43.0.3-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:281c945d0e28c92ca5e5930664c1cefd85efe80e5c0d2bc58dd63383fda29f83"}, - {file = "cryptography-43.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:f18c716be16bc1fea8e95def49edf46b82fccaa88587a45f8dc0ff6ab5d8e0a7"}, - {file = "cryptography-43.0.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:4a02ded6cd4f0a5562a8887df8b3bd14e822a90f97ac5e544c162899bc467664"}, - {file = "cryptography-43.0.3-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:53a583b6637ab4c4e3591a15bc9db855b8d9dee9a669b550f311480acab6eb08"}, - {file = "cryptography-43.0.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1ec0bcf7e17c0c5669d881b1cd38c4972fade441b27bda1051665faaa89bdcaa"}, - {file = "cryptography-43.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2ce6fae5bdad59577b44e4dfed356944fbf1d925269114c28be377692643b4ff"}, - {file = "cryptography-43.0.3.tar.gz", hash = "sha256:315b9001266a492a6ff443b61238f956b214dbec9910a081ba5b6646a055a805"}, +python-versions = "!=3.9.0,!=3.9.1,>=3.7" +files = [ + {file = "cryptography-44.0.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:84111ad4ff3f6253820e6d3e58be2cc2a00adb29335d4cacb5ab4d4d34f2a123"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b15492a11f9e1b62ba9d73c210e2416724633167de94607ec6069ef724fad092"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:831c3c4d0774e488fdc83a1923b49b9957d33287de923d58ebd3cec47a0ae43f"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:761817a3377ef15ac23cd7834715081791d4ec77f9297ee694ca1ee9c2c7e5eb"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3c672a53c0fb4725a29c303be906d3c1fa99c32f58abe008a82705f9ee96f40b"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:4ac4c9f37eba52cb6fbeaf5b59c152ea976726b865bd4cf87883a7e7006cc543"}, + {file = "cryptography-44.0.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ed3534eb1090483c96178fcb0f8893719d96d5274dfde98aa6add34614e97c8e"}, + {file = "cryptography-44.0.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:f3f6fdfa89ee2d9d496e2c087cebef9d4fcbb0ad63c40e821b39f74bf48d9c5e"}, + {file = "cryptography-44.0.0-cp37-abi3-win32.whl", hash = "sha256:eb33480f1bad5b78233b0ad3e1b0be21e8ef1da745d8d2aecbb20671658b9053"}, + {file = "cryptography-44.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:abc998e0c0eee3c8a1904221d3f67dcfa76422b23620173e28c11d3e626c21bd"}, + {file = "cryptography-44.0.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:660cb7312a08bc38be15b696462fa7cc7cd85c3ed9c576e81f4dc4d8b2b31591"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1923cb251c04be85eec9fda837661c67c1049063305d6be5721643c22dd4e2b7"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:404fdc66ee5f83a1388be54300ae978b2efd538018de18556dde92575e05defc"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:c5eb858beed7835e5ad1faba59e865109f3e52b3783b9ac21e7e47dc5554e289"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f53c2c87e0fb4b0c00fa9571082a057e37690a8f12233306161c8f4b819960b7"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:9e6fc8a08e116fb7c7dd1f040074c9d7b51d74a8ea40d4df2fc7aa08b76b9e6c"}, + {file = "cryptography-44.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d2436114e46b36d00f8b72ff57e598978b37399d2786fd39793c36c6d5cb1c64"}, + {file = "cryptography-44.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a01956ddfa0a6790d594f5b34fc1bfa6098aca434696a03cfdbe469b8ed79285"}, + {file = "cryptography-44.0.0-cp39-abi3-win32.whl", hash = "sha256:eca27345e1214d1b9f9490d200f9db5a874479be914199194e746c893788d417"}, + {file = "cryptography-44.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:37d76e6863da3774cd9db5b409a9ecfd2c71c981c38788d3fcfaf177f447b731"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:f677e1268c4e23420c3acade68fac427fffcb8d19d7df95ed7ad17cdef8404f4"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f5e7cb1e5e56ca0933b4873c0220a78b773b24d40d186b6738080b73d3d0a756"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_34_aarch64.whl", hash = "sha256:8b3e6eae66cf54701ee7d9c83c30ac0a1e3fa17be486033000f2a73a12ab507c"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_34_x86_64.whl", hash = "sha256:be4ce505894d15d5c5037167ffb7f0ae90b7be6f2a98f9a5c3442395501c32fa"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:62901fb618f74d7d81bf408c8719e9ec14d863086efe4185afd07c352aee1d2c"}, + {file = "cryptography-44.0.0.tar.gz", hash = "sha256:cd4e834f340b4293430701e772ec543b0fbe6c2dea510a5286fe0acabe153a02"}, ] [package.dependencies] cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} [package.extras] -docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] -docstest = ["pyenchant (>=1.6.11)", "readme-renderer", "sphinxcontrib-spelling (>=4.0.1)"] -nox = ["nox"] -pep8test = ["check-sdist", "click", "mypy", "ruff"] -sdist = ["build"] +docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=3.0.0)"] +docstest = ["pyenchant (>=3)", "readme-renderer (>=30.0)", "sphinxcontrib-spelling (>=7.3.1)"] +nox = ["nox (>=2024.4.15)", "nox[uv] (>=2024.3.2)"] +pep8test = ["check-sdist", "click (>=8.0.1)", "mypy (>=1.4)", "ruff (>=0.3.6)"] +sdist = ["build (>=1.0.0)"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "cryptography-vectors (==43.0.3)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi (>=2024)", "cryptography-vectors (==44.0.0)", "pretend (>=0.7)", "pytest (>=7.4.0)", "pytest-benchmark (>=4.0)", "pytest-cov (>=2.10.1)", "pytest-xdist (>=3.5.0)"] test-randomorder = ["pytest-randomly"] [[package]] @@ -774,29 +763,6 @@ files = [ [package.extras] all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] -[[package]] -name = "importlib-metadata" -version = "8.5.0" -description = "Read metadata from Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, - {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, -] - -[package.dependencies] -zipp = ">=3.20" - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -perf = ["ipython"] -test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] -type = ["pytest-mypy"] - [[package]] name = "iniconfig" version = "2.0.0" @@ -843,42 +809,39 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio [[package]] name = "ipython" -version = "8.12.3" +version = "8.18.1" description = "IPython: Productive Interactive Computing" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "ipython-8.12.3-py3-none-any.whl", hash = "sha256:b0340d46a933d27c657b211a329d0be23793c36595acf9e6ef4164bc01a1804c"}, - {file = "ipython-8.12.3.tar.gz", hash = "sha256:3910c4b54543c2ad73d06579aa771041b7d5707b033bd488669b4cf544e3b363"}, + {file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"}, + {file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"}, ] [package.dependencies] -appnope = {version = "*", markers = "sys_platform == \"darwin\""} -backcall = "*" colorama = {version = "*", markers = "sys_platform == \"win32\""} decorator = "*" +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} jedi = ">=0.16" matplotlib-inline = "*" pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} -pickleshare = "*" -prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" +prompt-toolkit = ">=3.0.41,<3.1.0" pygments = ">=2.4.0" stack-data = "*" traitlets = ">=5" -typing-extensions = {version = "*", markers = "python_version < \"3.10\""} [package.extras] -all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +all = ["black", "curio", "docrepr", "exceptiongroup", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] black = ["black"] -doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +doc = ["docrepr", "exceptiongroup", "ipykernel", "matplotlib", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] kernel = ["ipykernel"] nbconvert = ["nbconvert"] nbformat = ["nbformat"] notebook = ["ipywidgets", "notebook"] parallel = ["ipyparallel"] qtconsole = ["qtconsole"] -test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] -test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] +test = ["pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath", "trio"] [[package]] name = "ipywidgets" @@ -1007,13 +970,13 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- [[package]] name = "jsonschema-specifications" -version = "2023.12.1" +version = "2024.10.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"}, - {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"}, + {file = "jsonschema_specifications-2024.10.1-py3-none-any.whl", hash = "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf"}, + {file = "jsonschema_specifications-2024.10.1.tar.gz", hash = "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272"}, ] [package.dependencies] @@ -1050,7 +1013,6 @@ files = [ ] [package.dependencies] -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" python-dateutil = ">=2.8.2" pyzmq = ">=23.0" @@ -1107,13 +1069,13 @@ test = ["ipykernel", "pre-commit", "pytest (<8)", "pytest-cov", "pytest-timeout" [[package]] name = "jupyter-events" -version = "0.10.0" +version = "0.11.0" description = "Jupyter Event System library" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "jupyter_events-0.10.0-py3-none-any.whl", hash = "sha256:4b72130875e59d57716d327ea70d3ebc3af1944d3717e5a498b8a06c6c159960"}, - {file = "jupyter_events-0.10.0.tar.gz", hash = "sha256:670b8229d3cc882ec782144ed22e0d29e1c2d639263f92ca8383e66682845e22"}, + {file = "jupyter_events-0.11.0-py3-none-any.whl", hash = "sha256:36399b41ce1ca45fe8b8271067d6a140ffa54cec4028e95491c93b78a855cacf"}, + {file = "jupyter_events-0.11.0.tar.gz", hash = "sha256:c0bc56a37aac29c1fbc3bcfbddb8c8c49533f9cf11f1c4e6adadba936574ab90"}, ] [package.dependencies] @@ -1127,7 +1089,7 @@ traitlets = ">=5.3" [package.extras] cli = ["click", "rich"] -docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"] +docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme (>=0.16)", "sphinx (>=8)", "sphinxcontrib-spelling"] test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] [[package]] @@ -1142,18 +1104,17 @@ files = [ ] [package.dependencies] -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jupyter-server = ">=1.1.2" [[package]] name = "jupyter-server" -version = "2.14.2" +version = "2.15.0" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "jupyter_server-2.14.2-py3-none-any.whl", hash = "sha256:47ff506127c2f7851a17bf4713434208fc490955d0e8632e95014a9a9afbeefd"}, - {file = "jupyter_server-2.14.2.tar.gz", hash = "sha256:66095021aa9638ced276c248b1d81862e4c50f292d575920bbe960de1c56b12b"}, + {file = "jupyter_server-2.15.0-py3-none-any.whl", hash = "sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3"}, + {file = "jupyter_server-2.15.0.tar.gz", hash = "sha256:9d446b8697b4f7337a1b7cdcac40778babdd93ba614b6d68ab1c0c918f1c4084"}, ] [package.dependencies] @@ -1162,7 +1123,7 @@ argon2-cffi = ">=21.1" jinja2 = ">=3.0.3" jupyter-client = ">=7.4.4" jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -jupyter-events = ">=0.9.0" +jupyter-events = ">=0.11.0" jupyter-server-terminals = ">=0.4.4" nbconvert = ">=6.4.4" nbformat = ">=5.3.0" @@ -1214,7 +1175,6 @@ files = [ [package.dependencies] async-lru = ">=1.0.0" httpx = ">=0.25.0" -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} ipykernel = ">=6.5.0" jinja2 = ">=3.0.3" jupyter-core = "*" @@ -1259,7 +1219,6 @@ files = [ [package.dependencies] babel = ">=2.10" -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jinja2 = ">=3.0.3" json5 = ">=0.9.0" jsonschema = ">=4.18.0" @@ -1301,71 +1260,72 @@ typing-extensions = ">=4.3" [[package]] name = "markupsafe" -version = "2.1.5" +version = "3.0.2" description = "Safely add untrusted strings to HTML/XML markup." optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, - {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, + {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, ] [[package]] @@ -1409,13 +1369,13 @@ typing-extensions = {version = "*", markers = "python_version < \"3.11\""} [[package]] name = "nbclient" -version = "0.10.1" +version = "0.10.2" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." optional = false -python-versions = ">=3.8.0" +python-versions = ">=3.9.0" files = [ - {file = "nbclient-0.10.1-py3-none-any.whl", hash = "sha256:949019b9240d66897e442888cfb618f69ef23dc71c01cb5fced8499c2cfc084d"}, - {file = "nbclient-0.10.1.tar.gz", hash = "sha256:3e93e348ab27e712acd46fccd809139e356eb9a31aab641d1a7991a6eb4e6f68"}, + {file = "nbclient-0.10.2-py3-none-any.whl", hash = "sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d"}, + {file = "nbclient-0.10.2.tar.gz", hash = "sha256:90b7fc6b810630db87a6d0c2250b1f0ab4cf4d3c27a299b0cde78a4ed3fd9193"}, ] [package.dependencies] @@ -1426,25 +1386,24 @@ traitlets = ">=5.4" [package.extras] dev = ["pre-commit"] -docs = ["autodoc-traits", "flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "mock", "moto", "myst-parser", "nbconvert (>=7.0.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling", "testpath", "xmltodict"] -test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] +docs = ["autodoc-traits", "flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "mock", "moto", "myst-parser", "nbconvert (>=7.1.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling", "testpath", "xmltodict"] +test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.1.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] [[package]] name = "nbconvert" -version = "7.16.4" +version = "7.16.5" description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." optional = false python-versions = ">=3.8" files = [ - {file = "nbconvert-7.16.4-py3-none-any.whl", hash = "sha256:05873c620fe520b6322bf8a5ad562692343fe3452abda5765c7a34b7d1aa3eb3"}, - {file = "nbconvert-7.16.4.tar.gz", hash = "sha256:86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4"}, + {file = "nbconvert-7.16.5-py3-none-any.whl", hash = "sha256:e12eac052d6fd03040af4166c563d76e7aeead2e9aadf5356db552a1784bd547"}, + {file = "nbconvert-7.16.5.tar.gz", hash = "sha256:c83467bb5777fdfaac5ebbb8e864f300b277f68692ecc04d6dab72f2d8442344"}, ] [package.dependencies] beautifulsoup4 = "*" -bleach = "!=5.0.0" +bleach = {version = "!=5.0.0", extras = ["css"]} defusedxml = "*" -importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} jinja2 = ">=3.0" jupyter-core = ">=4.7" jupyterlab-pygments = "*" @@ -1455,7 +1414,6 @@ nbformat = ">=5.7" packaging = "*" pandocfilters = ">=1.4.1" pygments = ">=2.4.1" -tinycss2 = "*" traitlets = ">=5.1" [package.extras] @@ -1541,56 +1499,66 @@ test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync" [[package]] name = "numpy" -version = "2.0.2" +version = "2.2.1" description = "Fundamental package for array computing in Python" optional = false -python-versions = ">=3.9" -files = [ - {file = "numpy-2.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:51129a29dbe56f9ca83438b706e2e69a39892b5eda6cedcb6b0c9fdc9b0d3ece"}, - {file = "numpy-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f15975dfec0cf2239224d80e32c3170b1d168335eaedee69da84fbe9f1f9cd04"}, - {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:8c5713284ce4e282544c68d1c3b2c7161d38c256d2eefc93c1d683cf47683e66"}, - {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:becfae3ddd30736fe1889a37f1f580e245ba79a5855bff5f2a29cb3ccc22dd7b"}, - {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2da5960c3cf0df7eafefd806d4e612c5e19358de82cb3c343631188991566ccd"}, - {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:496f71341824ed9f3d2fd36cf3ac57ae2e0165c143b55c3a035ee219413f3318"}, - {file = "numpy-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a61ec659f68ae254e4d237816e33171497e978140353c0c2038d46e63282d0c8"}, - {file = "numpy-2.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d731a1c6116ba289c1e9ee714b08a8ff882944d4ad631fd411106a30f083c326"}, - {file = "numpy-2.0.2-cp310-cp310-win32.whl", hash = "sha256:984d96121c9f9616cd33fbd0618b7f08e0cfc9600a7ee1d6fd9b239186d19d97"}, - {file = "numpy-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:c7b0be4ef08607dd04da4092faee0b86607f111d5ae68036f16cc787e250a131"}, - {file = "numpy-2.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:49ca4decb342d66018b01932139c0961a8f9ddc7589611158cb3c27cbcf76448"}, - {file = "numpy-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:11a76c372d1d37437857280aa142086476136a8c0f373b2e648ab2c8f18fb195"}, - {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:807ec44583fd708a21d4a11d94aedf2f4f3c3719035c76a2bbe1fe8e217bdc57"}, - {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:8cafab480740e22f8d833acefed5cc87ce276f4ece12fdaa2e8903db2f82897a"}, - {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a15f476a45e6e5a3a79d8a14e62161d27ad897381fecfa4a09ed5322f2085669"}, - {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13e689d772146140a252c3a28501da66dfecd77490b498b168b501835041f951"}, - {file = "numpy-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9ea91dfb7c3d1c56a0e55657c0afb38cf1eeae4544c208dc465c3c9f3a7c09f9"}, - {file = "numpy-2.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c1c9307701fec8f3f7a1e6711f9089c06e6284b3afbbcd259f7791282d660a15"}, - {file = "numpy-2.0.2-cp311-cp311-win32.whl", hash = "sha256:a392a68bd329eafac5817e5aefeb39038c48b671afd242710b451e76090e81f4"}, - {file = "numpy-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:286cd40ce2b7d652a6f22efdfc6d1edf879440e53e76a75955bc0c826c7e64dc"}, - {file = "numpy-2.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:df55d490dea7934f330006d0f81e8551ba6010a5bf035a249ef61a94f21c500b"}, - {file = "numpy-2.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8df823f570d9adf0978347d1f926b2a867d5608f434a7cff7f7908c6570dcf5e"}, - {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:9a92ae5c14811e390f3767053ff54eaee3bf84576d99a2456391401323f4ec2c"}, - {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:a842d573724391493a97a62ebbb8e731f8a5dcc5d285dfc99141ca15a3302d0c"}, - {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c05e238064fc0610c840d1cf6a13bf63d7e391717d247f1bf0318172e759e692"}, - {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0123ffdaa88fa4ab64835dcbde75dcdf89c453c922f18dced6e27c90d1d0ec5a"}, - {file = "numpy-2.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:96a55f64139912d61de9137f11bf39a55ec8faec288c75a54f93dfd39f7eb40c"}, - {file = "numpy-2.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec9852fb39354b5a45a80bdab5ac02dd02b15f44b3804e9f00c556bf24b4bded"}, - {file = "numpy-2.0.2-cp312-cp312-win32.whl", hash = "sha256:671bec6496f83202ed2d3c8fdc486a8fc86942f2e69ff0e986140339a63bcbe5"}, - {file = "numpy-2.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:cfd41e13fdc257aa5778496b8caa5e856dc4896d4ccf01841daee1d96465467a"}, - {file = "numpy-2.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9059e10581ce4093f735ed23f3b9d283b9d517ff46009ddd485f1747eb22653c"}, - {file = "numpy-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:423e89b23490805d2a5a96fe40ec507407b8ee786d66f7328be214f9679df6dd"}, - {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:2b2955fa6f11907cf7a70dab0d0755159bca87755e831e47932367fc8f2f2d0b"}, - {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:97032a27bd9d8988b9a97a8c4d2c9f2c15a81f61e2f21404d7e8ef00cb5be729"}, - {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e795a8be3ddbac43274f18588329c72939870a16cae810c2b73461c40718ab1"}, - {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f26b258c385842546006213344c50655ff1555a9338e2e5e02a0756dc3e803dd"}, - {file = "numpy-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5fec9451a7789926bcf7c2b8d187292c9f93ea30284802a0ab3f5be8ab36865d"}, - {file = "numpy-2.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:9189427407d88ff25ecf8f12469d4d39d35bee1db5d39fc5c168c6f088a6956d"}, - {file = "numpy-2.0.2-cp39-cp39-win32.whl", hash = "sha256:905d16e0c60200656500c95b6b8dca5d109e23cb24abc701d41c02d74c6b3afa"}, - {file = "numpy-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:a3f4ab0caa7f053f6797fcd4e1e25caee367db3112ef2b6ef82d749530768c73"}, - {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:7f0a0c6f12e07fa94133c8a67404322845220c06a9e80e85999afe727f7438b8"}, - {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_14_0_x86_64.whl", hash = "sha256:312950fdd060354350ed123c0e25a71327d3711584beaef30cdaa93320c392d4"}, - {file = "numpy-2.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26df23238872200f63518dd2aa984cfca675d82469535dc7162dc2ee52d9dd5c"}, - {file = "numpy-2.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a46288ec55ebbd58947d31d72be2c63cbf839f0a63b49cb755022310792a3385"}, - {file = "numpy-2.0.2.tar.gz", hash = "sha256:883c987dee1880e2a864ab0dc9892292582510604156762362d9326444636e78"}, +python-versions = ">=3.10" +files = [ + {file = "numpy-2.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5edb4e4caf751c1518e6a26a83501fda79bff41cc59dac48d70e6d65d4ec4440"}, + {file = "numpy-2.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:aa3017c40d513ccac9621a2364f939d39e550c542eb2a894b4c8da92b38896ab"}, + {file = "numpy-2.2.1-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:61048b4a49b1c93fe13426e04e04fdf5a03f456616f6e98c7576144677598675"}, + {file = "numpy-2.2.1-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:7671dc19c7019103ca44e8d94917eba8534c76133523ca8406822efdd19c9308"}, + {file = "numpy-2.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4250888bcb96617e00bfa28ac24850a83c9f3a16db471eca2ee1f1714df0f957"}, + {file = "numpy-2.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a7746f235c47abc72b102d3bce9977714c2444bdfaea7888d241b4c4bb6a78bf"}, + {file = "numpy-2.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:059e6a747ae84fce488c3ee397cee7e5f905fd1bda5fb18c66bc41807ff119b2"}, + {file = "numpy-2.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f62aa6ee4eb43b024b0e5a01cf65a0bb078ef8c395e8713c6e8a12a697144528"}, + {file = "numpy-2.2.1-cp310-cp310-win32.whl", hash = "sha256:48fd472630715e1c1c89bf1feab55c29098cb403cc184b4859f9c86d4fcb6a95"}, + {file = "numpy-2.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:b541032178a718c165a49638d28272b771053f628382d5e9d1c93df23ff58dbf"}, + {file = "numpy-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:40f9e544c1c56ba8f1cf7686a8c9b5bb249e665d40d626a23899ba6d5d9e1484"}, + {file = "numpy-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f9b57eaa3b0cd8db52049ed0330747b0364e899e8a606a624813452b8203d5f7"}, + {file = "numpy-2.2.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:bc8a37ad5b22c08e2dbd27df2b3ef7e5c0864235805b1e718a235bcb200cf1cb"}, + {file = "numpy-2.2.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:9036d6365d13b6cbe8f27a0eaf73ddcc070cae584e5ff94bb45e3e9d729feab5"}, + {file = "numpy-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:51faf345324db860b515d3f364eaa93d0e0551a88d6218a7d61286554d190d73"}, + {file = "numpy-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38efc1e56b73cc9b182fe55e56e63b044dd26a72128fd2fbd502f75555d92591"}, + {file = "numpy-2.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:31b89fa67a8042e96715c68e071a1200c4e172f93b0fbe01a14c0ff3ff820fc8"}, + {file = "numpy-2.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4c86e2a209199ead7ee0af65e1d9992d1dce7e1f63c4b9a616500f93820658d0"}, + {file = "numpy-2.2.1-cp311-cp311-win32.whl", hash = "sha256:b34d87e8a3090ea626003f87f9392b3929a7bbf4104a05b6667348b6bd4bf1cd"}, + {file = "numpy-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:360137f8fb1b753c5cde3ac388597ad680eccbbbb3865ab65efea062c4a1fd16"}, + {file = "numpy-2.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:694f9e921a0c8f252980e85bce61ebbd07ed2b7d4fa72d0e4246f2f8aa6642ab"}, + {file = "numpy-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3683a8d166f2692664262fd4900f207791d005fb088d7fdb973cc8d663626faa"}, + {file = "numpy-2.2.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:780077d95eafc2ccc3ced969db22377b3864e5b9a0ea5eb347cc93b3ea900315"}, + {file = "numpy-2.2.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:55ba24ebe208344aa7a00e4482f65742969a039c2acfcb910bc6fcd776eb4355"}, + {file = "numpy-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b1d07b53b78bf84a96898c1bc139ad7f10fda7423f5fd158fd0f47ec5e01ac7"}, + {file = "numpy-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5062dc1a4e32a10dc2b8b13cedd58988261416e811c1dc4dbdea4f57eea61b0d"}, + {file = "numpy-2.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:fce4f615f8ca31b2e61aa0eb5865a21e14f5629515c9151850aa936c02a1ee51"}, + {file = "numpy-2.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:67d4cda6fa6ffa073b08c8372aa5fa767ceb10c9a0587c707505a6d426f4e046"}, + {file = "numpy-2.2.1-cp312-cp312-win32.whl", hash = "sha256:32cb94448be47c500d2c7a95f93e2f21a01f1fd05dd2beea1ccd049bb6001cd2"}, + {file = "numpy-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:ba5511d8f31c033a5fcbda22dd5c813630af98c70b2661f2d2c654ae3cdfcfc8"}, + {file = "numpy-2.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f1d09e520217618e76396377c81fba6f290d5f926f50c35f3a5f72b01a0da780"}, + {file = "numpy-2.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3ecc47cd7f6ea0336042be87d9e7da378e5c7e9b3c8ad0f7c966f714fc10d821"}, + {file = "numpy-2.2.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:f419290bc8968a46c4933158c91a0012b7a99bb2e465d5ef5293879742f8797e"}, + {file = "numpy-2.2.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:5b6c390bfaef8c45a260554888966618328d30e72173697e5cabe6b285fb2348"}, + {file = "numpy-2.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:526fc406ab991a340744aad7e25251dd47a6720a685fa3331e5c59fef5282a59"}, + {file = "numpy-2.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f74e6fdeb9a265624ec3a3918430205dff1df7e95a230779746a6af78bc615af"}, + {file = "numpy-2.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:53c09385ff0b72ba79d8715683c1168c12e0b6e84fb0372e97553d1ea91efe51"}, + {file = "numpy-2.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f3eac17d9ec51be534685ba877b6ab5edc3ab7ec95c8f163e5d7b39859524716"}, + {file = "numpy-2.2.1-cp313-cp313-win32.whl", hash = "sha256:9ad014faa93dbb52c80d8f4d3dcf855865c876c9660cb9bd7553843dd03a4b1e"}, + {file = "numpy-2.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:164a829b6aacf79ca47ba4814b130c4020b202522a93d7bff2202bfb33b61c60"}, + {file = "numpy-2.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4dfda918a13cc4f81e9118dea249e192ab167a0bb1966272d5503e39234d694e"}, + {file = "numpy-2.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:733585f9f4b62e9b3528dd1070ec4f52b8acf64215b60a845fa13ebd73cd0712"}, + {file = "numpy-2.2.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:89b16a18e7bba224ce5114db863e7029803c179979e1af6ad6a6b11f70545008"}, + {file = "numpy-2.2.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:676f4eebf6b2d430300f1f4f4c2461685f8269f94c89698d832cdf9277f30b84"}, + {file = "numpy-2.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:27f5cdf9f493b35f7e41e8368e7d7b4bbafaf9660cba53fb21d2cd174ec09631"}, + {file = "numpy-2.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1ad395cf254c4fbb5b2132fee391f361a6e8c1adbd28f2cd8e79308a615fe9d"}, + {file = "numpy-2.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:08ef779aed40dbc52729d6ffe7dd51df85796a702afbf68a4f4e41fafdc8bda5"}, + {file = "numpy-2.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:26c9c4382b19fcfbbed3238a14abf7ff223890ea1936b8890f058e7ba35e8d71"}, + {file = "numpy-2.2.1-cp313-cp313t-win32.whl", hash = "sha256:93cf4e045bae74c90ca833cba583c14b62cb4ba2cba0abd2b141ab52548247e2"}, + {file = "numpy-2.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:bff7d8ec20f5f42607599f9994770fa65d76edca264a87b5e4ea5629bce12268"}, + {file = "numpy-2.2.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7ba9cc93a91d86365a5d270dee221fdc04fb68d7478e6bf6af650de78a8339e3"}, + {file = "numpy-2.2.1-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:3d03883435a19794e41f147612a77a8f56d4e52822337844fff3d4040a142964"}, + {file = "numpy-2.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4511d9e6071452b944207c8ce46ad2f897307910b402ea5fa975da32e0102800"}, + {file = "numpy-2.2.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5c5cc0cbabe9452038ed984d05ac87910f89370b9242371bd9079cb4af61811e"}, + {file = "numpy-2.2.1.tar.gz", hash = "sha256:45681fd7128c8ad1c379f0ca0776a8b0c6583d2f69889ddac01559dfe4390918"}, ] [[package]] @@ -1631,66 +1599,85 @@ files = [ [[package]] name = "pandas" -version = "2.0.3" +version = "2.2.3" description = "Powerful data structures for data analysis, time series, and statistics" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, - {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, - {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, - {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, - {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, - {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, - {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, - {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, - {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, - {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, - {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d9c45366def9a3dd85a6454c0e7908f2b3b8e9c138f5dc38fed7ce720d8453ed"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86976a1c5b25ae3f8ccae3a5306e443569ee3c3faf444dfd0f41cda24667ad57"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8661b0238a69d7aafe156b7fa86c44b881387509653fdf857bebc5e4008ad42"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:37e0aced3e8f539eccf2e099f65cdb9c8aa85109b0be6e93e2baff94264bdc6f"}, + {file = "pandas-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:56534ce0746a58afaf7942ba4863e0ef81c9c50d3f0ae93e9497d6a41a057645"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:66108071e1b935240e74525006034333f98bcdb87ea116de573a6a0dccb6c039"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7c2875855b0ff77b2a64a0365e24455d9990730d6431b9e0ee18ad8acee13dbd"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd8d0c3be0515c12fed0bdbae072551c8b54b7192c7b1fda0ba56059a0179698"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c124333816c3a9b03fbeef3a9f230ba9a737e9e5bb4060aa2107a86cc0a497fc"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:63cc132e40a2e084cf01adf0775b15ac515ba905d7dcca47e9a251819c575ef3"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:29401dbfa9ad77319367d36940cd8a0b3a11aba16063e39632d98b0e931ddf32"}, + {file = "pandas-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:3fc6873a41186404dad67245896a6e440baacc92f5b716ccd1bc9ed2995ab2c5"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b1d432e8d08679a40e2a6d8b2f9770a5c21793a6f9f47fdd52c5ce1948a5a8a9"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a5a1595fe639f5988ba6a8e5bc9649af3baf26df3998a0abe56c02609392e0a4"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5de54125a92bb4d1c051c0659e6fcb75256bf799a732a87184e5ea503965bce3"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fffb8ae78d8af97f849404f21411c95062db1496aeb3e56f146f0355c9989319"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfcb5ee8d4d50c06a51c2fffa6cff6272098ad6540aed1a76d15fb9318194d8"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:062309c1b9ea12a50e8ce661145c6aab431b1e99530d3cd60640e255778bd43a"}, + {file = "pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb"}, + {file = "pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc6b93f9b966093cb0fd62ff1a7e4c09e6d546ad7c1de191767baffc57628f39"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5dbca4c1acd72e8eeef4753eeca07de9b1db4f398669d5994086f788a5d7cc30"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8cd6d7cc958a3910f934ea8dbdf17b2364827bb4dafc38ce6eef6bb3d65ff09c"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99df71520d25fade9db7c1076ac94eb994f4d2673ef2aa2e86ee039b6746d20c"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31d0ced62d4ea3e231a9f228366919a5ea0b07440d9d4dac345376fd8e1477ea"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7eee9e7cea6adf3e3d24e304ac6b8300646e2a5d1cd3a3c2abed9101b0846761"}, + {file = "pandas-2.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:4850ba03528b6dd51d6c5d273c46f183f39a9baf3f0143e566b89450965b105e"}, + {file = "pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667"}, ] [package.dependencies] -numpy = {version = ">=1.20.3", markers = "python_version < \"3.10\""} +numpy = {version = ">=1.22.4", markers = "python_version < \"3.11\""} python-dateutil = ">=2.8.2" pytz = ">=2020.1" -tzdata = ">=2022.1" - -[package.extras] -all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] -aws = ["s3fs (>=2021.08.0)"] -clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] -compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] -computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] -excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] -feather = ["pyarrow (>=7.0.0)"] -fss = ["fsspec (>=2021.07.0)"] -gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] -hdf5 = ["tables (>=3.6.1)"] -html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] -mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] -output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] -parquet = ["pyarrow (>=7.0.0)"] -performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] -plot = ["matplotlib (>=3.6.1)"] -postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] -spss = ["pyreadstat (>=1.1.2)"] -sql-other = ["SQLAlchemy (>=1.4.16)"] -test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] -xml = ["lxml (>=4.6.3)"] +tzdata = ">=2022.7" + +[package.extras] +all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"] +aws = ["s3fs (>=2022.11.0)"] +clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"] +compression = ["zstandard (>=0.19.0)"] +computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"] +feather = ["pyarrow (>=10.0.1)"] +fss = ["fsspec (>=2022.11.0)"] +gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"] +hdf5 = ["tables (>=3.8.0)"] +html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"] +mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"] +parquet = ["pyarrow (>=10.0.1)"] +performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"] +plot = ["matplotlib (>=3.6.3)"] +postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"] +pyarrow = ["pyarrow (>=10.0.1)"] +spss = ["pyreadstat (>=1.2.0)"] +sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.9.2)"] [[package]] name = "pandocfilters" @@ -1732,17 +1719,6 @@ files = [ [package.dependencies] ptyprocess = ">=0.5" -[[package]] -name = "pickleshare" -version = "0.7.5" -description = "Tiny 'shelve'-like database with concurrency support" -optional = false -python-versions = "*" -files = [ - {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, - {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, -] - [[package]] name = "platformdirs" version = "4.3.6" @@ -2102,9 +2078,6 @@ files = [ {file = "python_json_logger-3.2.1.tar.gz", hash = "sha256:8eb0554ea17cb75b05d2848bc14fb02fbdbd9d6972120781b974380bfa162008"}, ] -[package.dependencies] -typing_extensions = {version = "*", markers = "python_version < \"3.10\""} - [package.extras] dev = ["backports.zoneinfo", "black", "build", "freezegun", "mdx_truly_sane_lists", "mike", "mkdocs", "mkdocs-awesome-pages-plugin", "mkdocs-gen-files", "mkdocs-literate-nav", "mkdocs-material (>=8.5)", "mkdocstrings[python]", "msgspec", "msgspec-python313-pre", "mypy", "orjson", "pylint", "pytest", "tzdata", "validate-pyproject[all]"] @@ -2425,114 +2398,114 @@ files = [ [[package]] name = "rpds-py" -version = "0.20.1" +version = "0.22.3" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "rpds_py-0.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:a649dfd735fff086e8a9d0503a9f0c7d01b7912a333c7ae77e1515c08c146dad"}, - {file = "rpds_py-0.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f16bc1334853e91ddaaa1217045dd7be166170beec337576818461268a3de67f"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14511a539afee6f9ab492b543060c7491c99924314977a55c98bfa2ee29ce78c"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3ccb8ac2d3c71cda472b75af42818981bdacf48d2e21c36331b50b4f16930163"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c142b88039b92e7e0cb2552e8967077e3179b22359e945574f5e2764c3953dcf"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f19169781dddae7478a32301b499b2858bc52fc45a112955e798ee307e294977"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13c56de6518e14b9bf6edde23c4c39dac5b48dcf04160ea7bce8fca8397cdf86"}, - {file = "rpds_py-0.20.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:925d176a549f4832c6f69fa6026071294ab5910e82a0fe6c6228fce17b0706bd"}, - {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:78f0b6877bfce7a3d1ff150391354a410c55d3cdce386f862926a4958ad5ab7e"}, - {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:3dd645e2b0dcb0fd05bf58e2e54c13875847687d0b71941ad2e757e5d89d4356"}, - {file = "rpds_py-0.20.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:4f676e21db2f8c72ff0936f895271e7a700aa1f8d31b40e4e43442ba94973899"}, - {file = "rpds_py-0.20.1-cp310-none-win32.whl", hash = "sha256:648386ddd1e19b4a6abab69139b002bc49ebf065b596119f8f37c38e9ecee8ff"}, - {file = "rpds_py-0.20.1-cp310-none-win_amd64.whl", hash = "sha256:d9ecb51120de61e4604650666d1f2b68444d46ae18fd492245a08f53ad2b7711"}, - {file = "rpds_py-0.20.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:762703bdd2b30983c1d9e62b4c88664df4a8a4d5ec0e9253b0231171f18f6d75"}, - {file = "rpds_py-0.20.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0b581f47257a9fce535c4567782a8976002d6b8afa2c39ff616edf87cbeff712"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:842c19a6ce894493563c3bd00d81d5100e8e57d70209e84d5491940fdb8b9e3a"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42cbde7789f5c0bcd6816cb29808e36c01b960fb5d29f11e052215aa85497c93"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6c8e9340ce5a52f95fa7d3b552b35c7e8f3874d74a03a8a69279fd5fca5dc751"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ba6f89cac95c0900d932c9efb7f0fb6ca47f6687feec41abcb1bd5e2bd45535"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a916087371afd9648e1962e67403c53f9c49ca47b9680adbeef79da3a7811b0"}, - {file = "rpds_py-0.20.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:200a23239781f46149e6a415f1e870c5ef1e712939fe8fa63035cd053ac2638e"}, - {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:58b1d5dd591973d426cbb2da5e27ba0339209832b2f3315928c9790e13f159e8"}, - {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:6b73c67850ca7cae0f6c56f71e356d7e9fa25958d3e18a64927c2d930859b8e4"}, - {file = "rpds_py-0.20.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d8761c3c891cc51e90bc9926d6d2f59b27beaf86c74622c8979380a29cc23ac3"}, - {file = "rpds_py-0.20.1-cp311-none-win32.whl", hash = "sha256:cd945871335a639275eee904caef90041568ce3b42f402c6959b460d25ae8732"}, - {file = "rpds_py-0.20.1-cp311-none-win_amd64.whl", hash = "sha256:7e21b7031e17c6b0e445f42ccc77f79a97e2687023c5746bfb7a9e45e0921b84"}, - {file = "rpds_py-0.20.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:36785be22066966a27348444b40389f8444671630063edfb1a2eb04318721e17"}, - {file = "rpds_py-0.20.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:142c0a5124d9bd0e2976089484af5c74f47bd3298f2ed651ef54ea728d2ea42c"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbddc10776ca7ebf2a299c41a4dde8ea0d8e3547bfd731cb87af2e8f5bf8962d"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:15a842bb369e00295392e7ce192de9dcbf136954614124a667f9f9f17d6a216f"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be5ef2f1fc586a7372bfc355986226484e06d1dc4f9402539872c8bb99e34b01"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbcf360c9e3399b056a238523146ea77eeb2a596ce263b8814c900263e46031a"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ecd27a66740ffd621d20b9a2f2b5ee4129a56e27bfb9458a3bcc2e45794c96cb"}, - {file = "rpds_py-0.20.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0b937b2a1988f184a3e9e577adaa8aede21ec0b38320d6009e02bd026db04fa"}, - {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6889469bfdc1eddf489729b471303739bf04555bb151fe8875931f8564309afc"}, - {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:19b73643c802f4eaf13d97f7855d0fb527fbc92ab7013c4ad0e13a6ae0ed23bd"}, - {file = "rpds_py-0.20.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3c6afcf2338e7f374e8edc765c79fbcb4061d02b15dd5f8f314a4af2bdc7feb5"}, - {file = "rpds_py-0.20.1-cp312-none-win32.whl", hash = "sha256:dc73505153798c6f74854aba69cc75953888cf9866465196889c7cdd351e720c"}, - {file = "rpds_py-0.20.1-cp312-none-win_amd64.whl", hash = "sha256:8bbe951244a838a51289ee53a6bae3a07f26d4e179b96fc7ddd3301caf0518eb"}, - {file = "rpds_py-0.20.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:6ca91093a4a8da4afae7fe6a222c3b53ee4eef433ebfee4d54978a103435159e"}, - {file = "rpds_py-0.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b9c2fe36d1f758b28121bef29ed1dee9b7a2453e997528e7d1ac99b94892527c"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f009c69bc8c53db5dfab72ac760895dc1f2bc1b62ab7408b253c8d1ec52459fc"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6740a3e8d43a32629bb9b009017ea5b9e713b7210ba48ac8d4cb6d99d86c8ee8"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:32b922e13d4c0080d03e7b62991ad7f5007d9cd74e239c4b16bc85ae8b70252d"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe00a9057d100e69b4ae4a094203a708d65b0f345ed546fdef86498bf5390982"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49fe9b04b6fa685bd39237d45fad89ba19e9163a1ccaa16611a812e682913496"}, - {file = "rpds_py-0.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aa7ac11e294304e615b43f8c441fee5d40094275ed7311f3420d805fde9b07b4"}, - {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6aa97af1558a9bef4025f8f5d8c60d712e0a3b13a2fe875511defc6ee77a1ab7"}, - {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:483b29f6f7ffa6af845107d4efe2e3fa8fb2693de8657bc1849f674296ff6a5a"}, - {file = "rpds_py-0.20.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:37fe0f12aebb6a0e3e17bb4cd356b1286d2d18d2e93b2d39fe647138458b4bcb"}, - {file = "rpds_py-0.20.1-cp313-none-win32.whl", hash = "sha256:a624cc00ef2158e04188df5e3016385b9353638139a06fb77057b3498f794782"}, - {file = "rpds_py-0.20.1-cp313-none-win_amd64.whl", hash = "sha256:b71b8666eeea69d6363248822078c075bac6ed135faa9216aa85f295ff009b1e"}, - {file = "rpds_py-0.20.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:5b48e790e0355865197ad0aca8cde3d8ede347831e1959e158369eb3493d2191"}, - {file = "rpds_py-0.20.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3e310838a5801795207c66c73ea903deda321e6146d6f282e85fa7e3e4854804"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2249280b870e6a42c0d972339e9cc22ee98730a99cd7f2f727549af80dd5a963"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e79059d67bea28b53d255c1437b25391653263f0e69cd7dec170d778fdbca95e"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b431c777c9653e569986ecf69ff4a5dba281cded16043d348bf9ba505486f36"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:da584ff96ec95e97925174eb8237e32f626e7a1a97888cdd27ee2f1f24dd0ad8"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02a0629ec053fc013808a85178524e3cb63a61dbc35b22499870194a63578fb9"}, - {file = "rpds_py-0.20.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fbf15aff64a163db29a91ed0868af181d6f68ec1a3a7d5afcfe4501252840bad"}, - {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:07924c1b938798797d60c6308fa8ad3b3f0201802f82e4a2c41bb3fafb44cc28"}, - {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4a5a844f68776a7715ecb30843b453f07ac89bad393431efbf7accca3ef599c1"}, - {file = "rpds_py-0.20.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:518d2ca43c358929bf08f9079b617f1c2ca6e8848f83c1225c88caeac46e6cbc"}, - {file = "rpds_py-0.20.1-cp38-none-win32.whl", hash = "sha256:3aea7eed3e55119635a74bbeb80b35e776bafccb70d97e8ff838816c124539f1"}, - {file = "rpds_py-0.20.1-cp38-none-win_amd64.whl", hash = "sha256:7dca7081e9a0c3b6490a145593f6fe3173a94197f2cb9891183ef75e9d64c425"}, - {file = "rpds_py-0.20.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b41b6321805c472f66990c2849e152aff7bc359eb92f781e3f606609eac877ad"}, - {file = "rpds_py-0.20.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a90c373ea2975519b58dece25853dbcb9779b05cc46b4819cb1917e3b3215b6"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16d4477bcb9fbbd7b5b0e4a5d9b493e42026c0bf1f06f723a9353f5153e75d30"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:84b8382a90539910b53a6307f7c35697bc7e6ffb25d9c1d4e998a13e842a5e83"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4888e117dd41b9d34194d9e31631af70d3d526efc363085e3089ab1a62c32ed1"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5265505b3d61a0f56618c9b941dc54dc334dc6e660f1592d112cd103d914a6db"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e75ba609dba23f2c95b776efb9dd3f0b78a76a151e96f96cc5b6b1b0004de66f"}, - {file = "rpds_py-0.20.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1791ff70bc975b098fe6ecf04356a10e9e2bd7dc21fa7351c1742fdeb9b4966f"}, - {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d126b52e4a473d40232ec2052a8b232270ed1f8c9571aaf33f73a14cc298c24f"}, - {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c14937af98c4cc362a1d4374806204dd51b1e12dded1ae30645c298e5a5c4cb1"}, - {file = "rpds_py-0.20.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:3d089d0b88996df627693639d123c8158cff41c0651f646cd8fd292c7da90eaf"}, - {file = "rpds_py-0.20.1-cp39-none-win32.whl", hash = "sha256:653647b8838cf83b2e7e6a0364f49af96deec64d2a6578324db58380cff82aca"}, - {file = "rpds_py-0.20.1-cp39-none-win_amd64.whl", hash = "sha256:fa41a64ac5b08b292906e248549ab48b69c5428f3987b09689ab2441f267d04d"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:7a07ced2b22f0cf0b55a6a510078174c31b6d8544f3bc00c2bcee52b3d613f74"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:68cb0a499f2c4a088fd2f521453e22ed3527154136a855c62e148b7883b99f9a"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fa3060d885657abc549b2a0f8e1b79699290e5d83845141717c6c90c2df38311"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:95f3b65d2392e1c5cec27cff08fdc0080270d5a1a4b2ea1d51d5f4a2620ff08d"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2cc3712a4b0b76a1d45a9302dd2f53ff339614b1c29603a911318f2357b04dd2"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d4eea0761e37485c9b81400437adb11c40e13ef513375bbd6973e34100aeb06"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f5179583d7a6cdb981151dd349786cbc318bab54963a192692d945dd3f6435d"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2fbb0ffc754490aff6dabbf28064be47f0f9ca0b9755976f945214965b3ace7e"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:a94e52537a0e0a85429eda9e49f272ada715506d3b2431f64b8a3e34eb5f3e75"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:92b68b79c0da2a980b1c4197e56ac3dd0c8a149b4603747c4378914a68706979"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:93da1d3db08a827eda74356f9f58884adb254e59b6664f64cc04cdff2cc19b0d"}, - {file = "rpds_py-0.20.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:754bbed1a4ca48479e9d4182a561d001bbf81543876cdded6f695ec3d465846b"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ca449520e7484534a2a44faf629362cae62b660601432d04c482283c47eaebab"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:9c4cb04a16b0f199a8c9bf807269b2f63b7b5b11425e4a6bd44bd6961d28282c"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb63804105143c7e24cee7db89e37cb3f3941f8e80c4379a0b355c52a52b6780"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:55cd1fa4ecfa6d9f14fbd97ac24803e6f73e897c738f771a9fe038f2f11ff07c"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0f8f741b6292c86059ed175d80eefa80997125b7c478fb8769fd9ac8943a16c0"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fc212779bf8411667234b3cdd34d53de6c2b8b8b958e1e12cb473a5f367c338"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ad56edabcdb428c2e33bbf24f255fe2b43253b7d13a2cdbf05de955217313e6"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0a3a1e9ee9728b2c1734f65d6a1d376c6f2f6fdcc13bb007a08cc4b1ff576dc5"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:e13de156137b7095442b288e72f33503a469aa1980ed856b43c353ac86390519"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:07f59760ef99f31422c49038964b31c4dfcfeb5d2384ebfc71058a7c9adae2d2"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:59240685e7da61fb78f65a9f07f8108e36a83317c53f7b276b4175dc44151684"}, - {file = "rpds_py-0.20.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:83cba698cfb3c2c5a7c3c6bac12fe6c6a51aae69513726be6411076185a8b24a"}, - {file = "rpds_py-0.20.1.tar.gz", hash = "sha256:e1791c4aabd117653530dccd24108fa03cc6baf21f58b950d0a73c3b3b29a350"}, + {file = "rpds_py-0.22.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967"}, + {file = "rpds_py-0.22.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec"}, + {file = "rpds_py-0.22.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c"}, + {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09"}, + {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00"}, + {file = "rpds_py-0.22.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf"}, + {file = "rpds_py-0.22.3-cp310-cp310-win32.whl", hash = "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652"}, + {file = "rpds_py-0.22.3-cp310-cp310-win_amd64.whl", hash = "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8"}, + {file = "rpds_py-0.22.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f"}, + {file = "rpds_py-0.22.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1"}, + {file = "rpds_py-0.22.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d"}, + {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648"}, + {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74"}, + {file = "rpds_py-0.22.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a"}, + {file = "rpds_py-0.22.3-cp311-cp311-win32.whl", hash = "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64"}, + {file = "rpds_py-0.22.3-cp311-cp311-win_amd64.whl", hash = "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c"}, + {file = "rpds_py-0.22.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e"}, + {file = "rpds_py-0.22.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15"}, + {file = "rpds_py-0.22.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059"}, + {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e"}, + {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61"}, + {file = "rpds_py-0.22.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7"}, + {file = "rpds_py-0.22.3-cp312-cp312-win32.whl", hash = "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627"}, + {file = "rpds_py-0.22.3-cp312-cp312-win_amd64.whl", hash = "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4"}, + {file = "rpds_py-0.22.3-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84"}, + {file = "rpds_py-0.22.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518"}, + {file = "rpds_py-0.22.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd"}, + {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2"}, + {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16"}, + {file = "rpds_py-0.22.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f"}, + {file = "rpds_py-0.22.3-cp313-cp313-win32.whl", hash = "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de"}, + {file = "rpds_py-0.22.3-cp313-cp313-win_amd64.whl", hash = "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9"}, + {file = "rpds_py-0.22.3-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b"}, + {file = "rpds_py-0.22.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3"}, + {file = "rpds_py-0.22.3-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130"}, + {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c"}, + {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b"}, + {file = "rpds_py-0.22.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333"}, + {file = "rpds_py-0.22.3-cp313-cp313t-win32.whl", hash = "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730"}, + {file = "rpds_py-0.22.3-cp313-cp313t-win_amd64.whl", hash = "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf"}, + {file = "rpds_py-0.22.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea"}, + {file = "rpds_py-0.22.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543"}, + {file = "rpds_py-0.22.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d"}, + {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99"}, + {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831"}, + {file = "rpds_py-0.22.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520"}, + {file = "rpds_py-0.22.3-cp39-cp39-win32.whl", hash = "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9"}, + {file = "rpds_py-0.22.3-cp39-cp39-win_amd64.whl", hash = "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe"}, + {file = "rpds_py-0.22.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7"}, + {file = "rpds_py-0.22.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6"}, + {file = "rpds_py-0.22.3.tar.gz", hash = "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d"}, ] [[package]] @@ -2553,23 +2526,23 @@ win32 = ["pywin32"] [[package]] name = "setuptools" -version = "75.3.0" +version = "75.6.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "setuptools-75.3.0-py3-none-any.whl", hash = "sha256:f2504966861356aa38616760c0f66568e535562374995367b4e69c7143cf6bcd"}, - {file = "setuptools-75.3.0.tar.gz", hash = "sha256:fba5dd4d766e97be1b1681d98712680ae8f2f26d7881245f2ce9e40714f1a686"}, + {file = "setuptools-75.6.0-py3-none-any.whl", hash = "sha256:ce74b49e8f7110f9bf04883b730f4765b774ef3ef28f722cce7c273d253aaf7d"}, + {file = "setuptools-75.6.0.tar.gz", hash = "sha256:8199222558df7c86216af4f84c30e9b34a61d8ba19366cc914424cdbd28252f6"}, ] [package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.5.2)"] -core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.collections", "jaraco.functools", "jaraco.text (>=3.7)", "more-itertools", "more-itertools (>=8.8)", "packaging", "packaging (>=24)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.7.0)"] +core = ["importlib_metadata (>=6)", "jaraco.collections", "jaraco.functools (>=4)", "jaraco.text (>=3.7)", "more_itertools", "more_itertools (>=8.8)", "packaging", "packaging (>=24.2)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] enabler = ["pytest-enabler (>=2.2)"] -test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test (>=5.5)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] -type = ["importlib-metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (==1.12.*)", "pytest-mypy"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test (>=5.5)", "packaging (>=24.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] +type = ["importlib_metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (>=1.12,<1.14)", "pytest-mypy"] [[package]] name = "six" @@ -2814,13 +2787,13 @@ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake [[package]] name = "urllib3" -version = "2.2.3" +version = "2.3.0" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac"}, - {file = "urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9"}, + {file = "urllib3-2.3.0-py3-none-any.whl", hash = "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df"}, + {file = "urllib3-2.3.0.tar.gz", hash = "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d"}, ] [package.extras] @@ -2831,13 +2804,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "virtualenv" -version = "20.28.0" +version = "20.28.1" description = "Virtual Python Environment builder" optional = false python-versions = ">=3.8" files = [ - {file = "virtualenv-20.28.0-py3-none-any.whl", hash = "sha256:23eae1b4516ecd610481eda647f3a7c09aea295055337331bb4e6892ecce47b0"}, - {file = "virtualenv-20.28.0.tar.gz", hash = "sha256:2c9c3262bb8e7b87ea801d715fae4495e6032450c71d2309be9550e7364049aa"}, + {file = "virtualenv-20.28.1-py3-none-any.whl", hash = "sha256:412773c85d4dab0409b83ec36f7a6499e72eaf08c80e81e9576bca61831c71cb"}, + {file = "virtualenv-20.28.1.tar.gz", hash = "sha256:5d34ab240fdb5d21549b76f9e8ff3af28252f5499fb6d6f031adac4e5a8c5329"}, ] [package.dependencies] @@ -2862,19 +2835,15 @@ files = [ [[package]] name = "webcolors" -version = "24.8.0" +version = "24.11.1" description = "A library for working with the color formats defined by HTML and CSS." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "webcolors-24.8.0-py3-none-any.whl", hash = "sha256:fc4c3b59358ada164552084a8ebee637c221e4059267d0f8325b3b560f6c7f0a"}, - {file = "webcolors-24.8.0.tar.gz", hash = "sha256:08b07af286a01bcd30d583a7acadf629583d1f79bfef27dd2c2c5c263817277d"}, + {file = "webcolors-24.11.1-py3-none-any.whl", hash = "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9"}, + {file = "webcolors-24.11.1.tar.gz", hash = "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6"}, ] -[package.extras] -docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] -tests = ["coverage[toml]"] - [[package]] name = "webencodings" version = "0.5.1" @@ -2913,26 +2882,7 @@ files = [ {file = "widgetsnbextension-4.0.13.tar.gz", hash = "sha256:ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6"}, ] -[[package]] -name = "zipp" -version = "3.21.0" -description = "Backport of pathlib-compatible object wrapper for zip files" -optional = false -python-versions = ">=3.9" -files = [ - {file = "zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931"}, - {file = "zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4"}, -] - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] -type = ["pytest-mypy"] - [metadata] lock-version = "2.0" -python-versions = "3.9.*" -content-hash = "6715a0a5feb365ecbf907f84a027cc4688c27e88a321859677fe0d474814c79d" +python-versions = "3.10.*" +content-hash = "a4331a70000ffcba2e61a09e5909c52014444d5b3c77c6ea19bc70606cfe105d" diff --git a/python-restclient/pyproject.toml b/python-restclient/pyproject.toml index e672fd7dfe..6af8dcc9dd 100644 --- a/python-restclient/pyproject.toml +++ b/python-restclient/pyproject.toml @@ -10,7 +10,7 @@ keywords = ["OpenAPI", "OpenAPI-Generator", "VCell API"] include = ["vcell_client/py.typed"] [tool.poetry.dependencies] -python = "3.9.*" +python = "3.10.*" urllib3 = ">= 1.25.3" python-dateutil = ">=2.8.2" From acbc2891c54391400aa3b6d5b93d3f159509e847 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 3 Jan 2025 07:57:31 -0500 Subject: [PATCH 29/37] Add Spring Salad Override --- .../main/java/cbit/vcell/client/FieldDataWindowManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java b/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java index 5bac904246..c793df884b 100644 --- a/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java +++ b/vcell-client/src/main/java/cbit/vcell/client/FieldDataWindowManager.java @@ -274,6 +274,11 @@ public String getContextName() { public DataSymbolMetadataResolver getDataSymbolMetadataResolver() { return pdeDataViewer.getSimulationModelInfo().getDataSymbolMetadataResolver(); } + + @Override + public boolean isSpringSaLad() { + return false; + } }); SimulationOwner simulationOwner = new SimulationOwner.FieldDataSimOwner() { From 8ff720f5bdbcfd4e8653eb48955b4ee639dbf5bb Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 3 Jan 2025 10:54:06 -0500 Subject: [PATCH 30/37] Regenerated Client Ran the automated client generation script again to ensure nothing of importance has changed. --- python-restclient/.openapi-generator/FILES | 1 - vcell-restclient/.openapi-generator/FILES | 2 -- 2 files changed, 3 deletions(-) diff --git a/python-restclient/.openapi-generator/FILES b/python-restclient/.openapi-generator/FILES index 59cbba1451..0da7ec2a2d 100644 --- a/python-restclient/.openapi-generator/FILES +++ b/python-restclient/.openapi-generator/FILES @@ -47,7 +47,6 @@ docs/VariableDomain.md docs/VariableType.md pyproject.toml test/__init__.py -test/test_field_data_shape.py tox.ini vcell_client/__init__.py vcell_client/api/__init__.py diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 83638276d5..2a54d3a046 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -100,5 +100,3 @@ src/main/java/org/vcell/restclient/model/UserRegistrationInfo.java src/main/java/org/vcell/restclient/model/VCSimulationIdentifier.java src/main/java/org/vcell/restclient/model/VariableDomain.java src/main/java/org/vcell/restclient/model/VariableType.java -src/test/java/org/vcell/restclient/api/FieldDataResourceApiTest.java -src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java From c3964207c9cf1cbc180f6e724b2b3505b4b8cb65 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 3 Jan 2025 11:10:22 -0500 Subject: [PATCH 31/37] Update Client Models, Docs, and Tests --- .../docs/AccessTokenRepresentation.md | 32 - python-restclient/docs/CartesianMesh.md | 43 - python-restclient/docs/Coordinate.md | 30 - .../docs/FieldDataDBOperationSpec.md | 35 - .../docs/FieldDataExternalDataIDs.md | 30 - .../docs/FieldDataFileOperationResults.md | 34 - .../docs/FieldDataFileOperationSpec.md | 44 - python-restclient/docs/FieldDataInfo.md | 32 - .../docs/FieldDataNoCopyConflict.md | 29 - .../docs/FieldDataReferenceInfo.md | 34 - python-restclient/docs/FieldDataReferences.md | 30 - python-restclient/docs/GroupAccess.md | 29 - python-restclient/docs/IdentityProvider.md | 10 - python-restclient/docs/MapUser.md | 29 - .../docs/OverrideRepresentation.md | 32 - .../docs/SaveFieldDataFromFile.md | 35 - python-restclient/docs/Simulation.md | 28 - .../docs/SimulationExecutionStatus.md | 38 - python-restclient/docs/SimulationJobStatus.md | 50 -- .../docs/SimulationQueueEntryStatus.md | 33 - python-restclient/docs/UCDInfo.md | 39 - python-restclient/docs/User1.md | 33 - python-restclient/docs/UserIdentity.md | 31 - python-restclient/docs/VCellServerID.md | 28 - python-restclient/docs/Version.md | 44 - python-restclient/docs/VersionFlag.md | 32 - python-restclient/docs/VersionableType.md | 35 - .../docs/VersionableTypeVersion.md | 29 - python-restclient/pyproject.toml | 9 +- .../test/test_access_token_representation.py | 57 -- .../test_analyzed_results_from_field_data.py | 3 +- python-restclient/test/test_bio_model.py | 8 +- .../test/test_bio_model_resource_api.py | 35 - python-restclient/test/test_biomodel_ref.py | 2 +- python-restclient/test/test_cartesian_mesh.py | 118 --- python-restclient/test/test_coordinate.py | 55 -- .../test/test_external_data_identifier.py | 3 - .../test/test_field_data_db_operation_spec.py | 131 --- .../test/test_field_data_external_data_ids.py | 78 -- .../test_field_data_file_operation_results.py | 101 --- .../test_field_data_file_operation_spec.py | 200 ----- .../test/test_field_data_info.py | 68 -- .../test/test_field_data_no_copy_conflict.py | 73 -- .../test/test_field_data_reference.py | 6 +- .../test/test_field_data_reference_info.py | 62 -- .../test/test_field_data_references.py | 78 -- .../test/test_field_data_resource_api.py | 29 +- python-restclient/test/test_group_access.py | 54 -- .../test/test_hello_world_api.py | 2 +- .../test/test_hello_world_message.py | 2 +- python-restclient/test/test_i_size.py | 3 +- .../test/test_identity_provider.py | 35 - python-restclient/test/test_map_user.py | 54 -- python-restclient/test/test_mathmodel_ref.py | 2 +- .../test/test_override_representation.py | 59 -- python-restclient/test/test_publication.py | 2 +- .../test/test_publication_resource_api.py | 31 +- .../test/test_save_field_data_from_file.py | 106 --- python-restclient/test/test_simulation.py | 53 -- .../test/test_simulation_execution_status.py | 69 -- .../test/test_simulation_job_status.py | 155 ---- .../test/test_simulation_job_status_record.py | 31 +- .../test_simulation_queue_entry_status.py | 58 -- .../test/test_simulation_resource_api.py | 6 +- ...est_simulation_status_persistent_record.py | 3 - python-restclient/test/test_status_message.py | 64 +- python-restclient/test/test_ucd_info.py | 95 --- python-restclient/test/test_user.py | 8 +- python-restclient/test/test_user1.py | 60 -- python-restclient/test/test_user_identity.py | 65 -- .../test/test_user_identity_json_safe.py | 1 + .../test/test_user_login_info_for_mapping.py | 4 +- .../test/test_users_resource_api.py | 70 +- .../test/test_v_cell_server_id.py | 53 -- .../test/test_vc_simulation_identifier.py | 2 - python-restclient/test/test_version.py | 99 --- python-restclient/test/test_version_flag.py | 57 -- .../test/test_versionable_type.py | 60 -- .../test/test_versionable_type_version.py | 100 --- .../models/access_token_representation.py | 102 --- .../vcell_client/models/cartesian_mesh.py | 132 --- .../vcell_client/models/coordinate.py | 97 --- .../models/field_data_db_operation_spec.py | 120 --- .../models/field_data_external_data_ids.py | 123 --- .../field_data_file_operation_results.py | 138 --- .../models/field_data_file_operation_spec.py | 165 ---- .../vcell_client/models/field_data_info.py | 122 --- .../models/field_data_no_copy_conflict.py | 122 --- .../models/field_data_reference_info.py | 110 --- .../models/field_data_references.py | 123 --- .../vcell_client/models/group_access.py | 95 --- .../vcell_client/models/identity_provider.py | 46 - .../vcell_client/models/map_user.py | 96 --- .../models/override_representation.py | 101 --- .../models/save_field_data_from_file.py | 120 --- .../vcell_client/models/simulation.py | 93 -- .../models/simulation_execution_status.py | 121 --- .../models/simulation_job_status.py | 174 ---- .../models/simulation_queue_entry_status.py | 105 --- .../vcell_client/models/ucd_info.py | 148 ---- .../vcell_client/models/user1.py | 111 --- .../vcell_client/models/user_identity.py | 100 --- .../vcell_client/models/v_cell_server_id.py | 94 -- .../vcell_client/models/version.py | 157 ---- .../vcell_client/models/version_flag.py | 102 --- .../vcell_client/models/versionable_type.py | 108 --- .../models/versionable_type_version.py | 104 --- vcell-restclient/.openapi-generator/FILES | 37 + .../docs/AccessTokenRepresentation.md | 17 - vcell-restclient/docs/CartesianMesh.md | 28 - vcell-restclient/docs/Coordinate.md | 15 - .../docs/FieldDataDBOperationSpec.md | 20 - .../docs/FieldDataExternalDataIDs.md | 15 - .../docs/FieldDataFileOperationSpec.md | 29 - vcell-restclient/docs/FieldDataInfo.md | 17 - .../docs/FieldDataNoCopyConflict.md | 14 - vcell-restclient/docs/FieldDataReferences.md | 15 - vcell-restclient/docs/GroupAccess.md | 14 - vcell-restclient/docs/IdentityProvider.md | 13 - vcell-restclient/docs/MapUser.md | 14 - .../docs/OverrideRepresentation.md | 17 - vcell-restclient/docs/Simulation.md | 13 - .../docs/SimulationExecutionStatus.md | 23 - vcell-restclient/docs/SimulationJobStatus.md | 35 - .../docs/SimulationQueueEntryStatus.md | 18 - vcell-restclient/docs/UCDInfo.md | 24 - vcell-restclient/docs/User1.md | 18 - vcell-restclient/docs/UserIdentity.md | 16 - vcell-restclient/docs/VCellServerID.md | 13 - vcell-restclient/docs/Version.md | 29 - vcell-restclient/docs/VersionFlag.md | 17 - vcell-restclient/docs/VersionableType.md | 20 - .../docs/VersionableTypeVersion.md | 14 - .../vcell/restclient/model/CartesianMesh.java | 733 ---------------- .../vcell/restclient/model/Coordinate.java | 222 ----- .../model/FieldDataDBOperationSpec.java | 419 --------- .../model/FieldDataExternalDataIDs.java | 265 ------ .../model/FieldDataFileOperationSpec.java | 801 ------------------ .../vcell/restclient/model/FieldDataInfo.java | 325 ------- .../model/FieldDataNoCopyConflict.java | 216 ----- .../restclient/model/FieldDataReferences.java | 265 ------ .../vcell/restclient/model/GroupAccess.java | 187 ---- .../org/vcell/restclient/model/UCDInfo.java | 614 -------------- .../org/vcell/restclient/model/Version.java | 732 ---------------- .../vcell/restclient/model/VersionFlag.java | 294 ------- .../restclient/model/VersionableType.java | 402 --------- .../model/VersionableTypeVersion.java | 188 ---- .../restclient/model/CartesianMeshTest.java | 175 ---- .../restclient/model/CoordinateTest.java | 64 -- .../model/ExternalDataIdentifierTest.java | 8 - .../model/FieldDataDBOperationSpecTest.java | 109 --- .../model/FieldDataExternalDataIDsTest.java | 70 -- .../model/FieldDataFileOperationSpecTest.java | 186 ---- .../restclient/model/FieldDataInfoTest.java | 77 -- .../model/FieldDataNoCopyConflictTest.java | 60 -- .../model/FieldDataReferencesTest.java | 70 -- .../restclient/model/GroupAccessTest.java | 57 -- .../org/vcell/restclient/model/ISizeTest.java | 8 - .../vcell/restclient/model/UCDInfoTest.java | 139 --- .../org/vcell/restclient/model/UserTest.java | 8 - .../restclient/model/VersionFlagTest.java | 80 -- .../vcell/restclient/model/VersionTest.java | 182 ---- .../restclient/model/VersionableTypeTest.java | 104 --- .../model/VersionableTypeVersionTest.java | 58 -- .../model/access-token-representation.ts | 21 - .../modules/openapi/model/cartesian-mesh.ts | 34 - .../core/modules/openapi/model/coordinate.ts | 19 - .../model/field-data-db-operation-spec.ts | 27 - .../model/field-data-external-data-ids.ts | 21 - .../field-data-file-operation-results.ts | 29 - .../model/field-data-file-operation-spec.ts | 41 - .../modules/openapi/model/field-data-info.ts | 25 - .../model/field-data-no-copy-conflict.ts | 20 - .../model/field-data-reference-info.ts | 24 - .../openapi/model/field-data-references.ts | 21 - .../modules/openapi/model/group-access.ts | 18 - .../openapi/model/identity-provider.ts | 20 - .../core/modules/openapi/model/map-user.ts | 18 - .../openapi/model/override-representation.ts | 21 - .../model/save-field-data-from-file.ts | 27 - .../model/simulation-execution-status.ts | 28 - .../openapi/model/simulation-job-status.ts | 48 -- .../model/simulation-queue-entry-status.ts | 26 - .../core/modules/openapi/model/simulation.ts | 17 - .../core/modules/openapi/model/ucd-info.ts | 29 - .../modules/openapi/model/user-identity.ts | 20 - .../app/core/modules/openapi/model/user1.ts | 23 - .../modules/openapi/model/v-cell-server-id.ts | 17 - .../modules/openapi/model/version-flag.ts | 21 - .../app/core/modules/openapi/model/version.ts | 37 - .../openapi/model/versionable-type-version.ts | 20 - .../modules/openapi/model/versionable-type.ts | 24 - 192 files changed, 194 insertions(+), 14861 deletions(-) delete mode 100644 python-restclient/docs/AccessTokenRepresentation.md delete mode 100644 python-restclient/docs/CartesianMesh.md delete mode 100644 python-restclient/docs/Coordinate.md delete mode 100644 python-restclient/docs/FieldDataDBOperationSpec.md delete mode 100644 python-restclient/docs/FieldDataExternalDataIDs.md delete mode 100644 python-restclient/docs/FieldDataFileOperationResults.md delete mode 100644 python-restclient/docs/FieldDataFileOperationSpec.md delete mode 100644 python-restclient/docs/FieldDataInfo.md delete mode 100644 python-restclient/docs/FieldDataNoCopyConflict.md delete mode 100644 python-restclient/docs/FieldDataReferenceInfo.md delete mode 100644 python-restclient/docs/FieldDataReferences.md delete mode 100644 python-restclient/docs/GroupAccess.md delete mode 100644 python-restclient/docs/IdentityProvider.md delete mode 100644 python-restclient/docs/MapUser.md delete mode 100644 python-restclient/docs/OverrideRepresentation.md delete mode 100644 python-restclient/docs/SaveFieldDataFromFile.md delete mode 100644 python-restclient/docs/Simulation.md delete mode 100644 python-restclient/docs/SimulationExecutionStatus.md delete mode 100644 python-restclient/docs/SimulationJobStatus.md delete mode 100644 python-restclient/docs/SimulationQueueEntryStatus.md delete mode 100644 python-restclient/docs/UCDInfo.md delete mode 100644 python-restclient/docs/User1.md delete mode 100644 python-restclient/docs/UserIdentity.md delete mode 100644 python-restclient/docs/VCellServerID.md delete mode 100644 python-restclient/docs/Version.md delete mode 100644 python-restclient/docs/VersionFlag.md delete mode 100644 python-restclient/docs/VersionableType.md delete mode 100644 python-restclient/docs/VersionableTypeVersion.md delete mode 100644 python-restclient/test/test_access_token_representation.py delete mode 100644 python-restclient/test/test_cartesian_mesh.py delete mode 100644 python-restclient/test/test_coordinate.py delete mode 100644 python-restclient/test/test_field_data_db_operation_spec.py delete mode 100644 python-restclient/test/test_field_data_external_data_ids.py delete mode 100644 python-restclient/test/test_field_data_file_operation_results.py delete mode 100644 python-restclient/test/test_field_data_file_operation_spec.py delete mode 100644 python-restclient/test/test_field_data_info.py delete mode 100644 python-restclient/test/test_field_data_no_copy_conflict.py delete mode 100644 python-restclient/test/test_field_data_reference_info.py delete mode 100644 python-restclient/test/test_field_data_references.py delete mode 100644 python-restclient/test/test_group_access.py delete mode 100644 python-restclient/test/test_identity_provider.py delete mode 100644 python-restclient/test/test_map_user.py delete mode 100644 python-restclient/test/test_override_representation.py delete mode 100644 python-restclient/test/test_save_field_data_from_file.py delete mode 100644 python-restclient/test/test_simulation.py delete mode 100644 python-restclient/test/test_simulation_execution_status.py delete mode 100644 python-restclient/test/test_simulation_job_status.py delete mode 100644 python-restclient/test/test_simulation_queue_entry_status.py delete mode 100644 python-restclient/test/test_ucd_info.py delete mode 100644 python-restclient/test/test_user1.py delete mode 100644 python-restclient/test/test_user_identity.py delete mode 100644 python-restclient/test/test_v_cell_server_id.py delete mode 100644 python-restclient/test/test_version.py delete mode 100644 python-restclient/test/test_version_flag.py delete mode 100644 python-restclient/test/test_versionable_type.py delete mode 100644 python-restclient/test/test_versionable_type_version.py delete mode 100644 python-restclient/vcell_client/models/access_token_representation.py delete mode 100644 python-restclient/vcell_client/models/cartesian_mesh.py delete mode 100644 python-restclient/vcell_client/models/coordinate.py delete mode 100644 python-restclient/vcell_client/models/field_data_db_operation_spec.py delete mode 100644 python-restclient/vcell_client/models/field_data_external_data_ids.py delete mode 100644 python-restclient/vcell_client/models/field_data_file_operation_results.py delete mode 100644 python-restclient/vcell_client/models/field_data_file_operation_spec.py delete mode 100644 python-restclient/vcell_client/models/field_data_info.py delete mode 100644 python-restclient/vcell_client/models/field_data_no_copy_conflict.py delete mode 100644 python-restclient/vcell_client/models/field_data_reference_info.py delete mode 100644 python-restclient/vcell_client/models/field_data_references.py delete mode 100644 python-restclient/vcell_client/models/group_access.py delete mode 100644 python-restclient/vcell_client/models/identity_provider.py delete mode 100644 python-restclient/vcell_client/models/map_user.py delete mode 100644 python-restclient/vcell_client/models/override_representation.py delete mode 100644 python-restclient/vcell_client/models/save_field_data_from_file.py delete mode 100644 python-restclient/vcell_client/models/simulation.py delete mode 100644 python-restclient/vcell_client/models/simulation_execution_status.py delete mode 100644 python-restclient/vcell_client/models/simulation_job_status.py delete mode 100644 python-restclient/vcell_client/models/simulation_queue_entry_status.py delete mode 100644 python-restclient/vcell_client/models/ucd_info.py delete mode 100644 python-restclient/vcell_client/models/user1.py delete mode 100644 python-restclient/vcell_client/models/user_identity.py delete mode 100644 python-restclient/vcell_client/models/v_cell_server_id.py delete mode 100644 python-restclient/vcell_client/models/version.py delete mode 100644 python-restclient/vcell_client/models/version_flag.py delete mode 100644 python-restclient/vcell_client/models/versionable_type.py delete mode 100644 python-restclient/vcell_client/models/versionable_type_version.py delete mode 100644 vcell-restclient/docs/AccessTokenRepresentation.md delete mode 100644 vcell-restclient/docs/CartesianMesh.md delete mode 100644 vcell-restclient/docs/Coordinate.md delete mode 100644 vcell-restclient/docs/FieldDataDBOperationSpec.md delete mode 100644 vcell-restclient/docs/FieldDataExternalDataIDs.md delete mode 100644 vcell-restclient/docs/FieldDataFileOperationSpec.md delete mode 100644 vcell-restclient/docs/FieldDataInfo.md delete mode 100644 vcell-restclient/docs/FieldDataNoCopyConflict.md delete mode 100644 vcell-restclient/docs/FieldDataReferences.md delete mode 100644 vcell-restclient/docs/GroupAccess.md delete mode 100644 vcell-restclient/docs/IdentityProvider.md delete mode 100644 vcell-restclient/docs/MapUser.md delete mode 100644 vcell-restclient/docs/OverrideRepresentation.md delete mode 100644 vcell-restclient/docs/Simulation.md delete mode 100644 vcell-restclient/docs/SimulationExecutionStatus.md delete mode 100644 vcell-restclient/docs/SimulationJobStatus.md delete mode 100644 vcell-restclient/docs/SimulationQueueEntryStatus.md delete mode 100644 vcell-restclient/docs/UCDInfo.md delete mode 100644 vcell-restclient/docs/User1.md delete mode 100644 vcell-restclient/docs/UserIdentity.md delete mode 100644 vcell-restclient/docs/VCellServerID.md delete mode 100644 vcell-restclient/docs/Version.md delete mode 100644 vcell-restclient/docs/VersionFlag.md delete mode 100644 vcell-restclient/docs/VersionableType.md delete mode 100644 vcell-restclient/docs/VersionableTypeVersion.md delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java delete mode 100644 vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java delete mode 100644 vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/access-token-representation.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/coordinate.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/group-access.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/identity-provider.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/map-user.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/override-representation.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/simulation-execution-status.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/simulation-job-status.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/simulation-queue-entry-status.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/simulation.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/user-identity.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/user1.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/v-cell-server-id.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/version-flag.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/version.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts delete mode 100644 webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts diff --git a/python-restclient/docs/AccessTokenRepresentation.md b/python-restclient/docs/AccessTokenRepresentation.md deleted file mode 100644 index 40fb2223b5..0000000000 --- a/python-restclient/docs/AccessTokenRepresentation.md +++ /dev/null @@ -1,32 +0,0 @@ -# AccessTokenRepresentation - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**token** | **str** | | [optional] -**creation_date_seconds** | **int** | | [optional] -**expire_date_seconds** | **int** | | [optional] -**user_id** | **str** | | [optional] -**user_key** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.access_token_representation import AccessTokenRepresentation - -# TODO update the JSON string below -json = "{}" -# create an instance of AccessTokenRepresentation from a JSON string -access_token_representation_instance = AccessTokenRepresentation.from_json(json) -# print the JSON string representation of the object -print AccessTokenRepresentation.to_json() - -# convert the object into a dict -access_token_representation_dict = access_token_representation_instance.to_dict() -# create an instance of AccessTokenRepresentation from a dict -access_token_representation_form_dict = access_token_representation.from_dict(access_token_representation_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/CartesianMesh.md b/python-restclient/docs/CartesianMesh.md deleted file mode 100644 index f3dfb9052f..0000000000 --- a/python-restclient/docs/CartesianMesh.md +++ /dev/null @@ -1,43 +0,0 @@ -# CartesianMesh - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**compressed_bytes** | **bytearray** | | [optional] -**u_cd_info** | [**UCDInfo**](UCDInfo.md) | | [optional] -**geometry_dimension** | **int** | | [optional] -**volume_region_map_subvolume** | **Dict[str, int]** | | [optional] -**membrane_region_map_subvolumes_in_out** | **Dict[str, object]** | | [optional] -**num_membrane_elements** | **int** | | [optional] -**num_membrane_regions** | **int** | | [optional] -**num_volume_elements** | **int** | | [optional] -**num_volume_regions** | **int** | | [optional] -**i_size** | [**ISize**](ISize.md) | | [optional] -**size_x** | **int** | | [optional] -**size_y** | **int** | | [optional] -**size_z** | **int** | | [optional] -**membrane_connectivity_ok** | **bool** | | [optional] -**output_fields** | **List[object]** | | [optional] -**chombo_mesh** | **bool** | | [optional] - -## Example - -```python -from vcell_client.models.cartesian_mesh import CartesianMesh - -# TODO update the JSON string below -json = "{}" -# create an instance of CartesianMesh from a JSON string -cartesian_mesh_instance = CartesianMesh.from_json(json) -# print the JSON string representation of the object -print CartesianMesh.to_json() - -# convert the object into a dict -cartesian_mesh_dict = cartesian_mesh_instance.to_dict() -# create an instance of CartesianMesh from a dict -cartesian_mesh_form_dict = cartesian_mesh.from_dict(cartesian_mesh_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/Coordinate.md b/python-restclient/docs/Coordinate.md deleted file mode 100644 index c5c51eb0f7..0000000000 --- a/python-restclient/docs/Coordinate.md +++ /dev/null @@ -1,30 +0,0 @@ -# Coordinate - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**x** | **float** | | [optional] -**y** | **float** | | [optional] -**z** | **float** | | [optional] - -## Example - -```python -from vcell_client.models.coordinate import Coordinate - -# TODO update the JSON string below -json = "{}" -# create an instance of Coordinate from a JSON string -coordinate_instance = Coordinate.from_json(json) -# print the JSON string representation of the object -print Coordinate.to_json() - -# convert the object into a dict -coordinate_dict = coordinate_instance.to_dict() -# create an instance of Coordinate from a dict -coordinate_form_dict = coordinate.from_dict(coordinate_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataDBOperationSpec.md b/python-restclient/docs/FieldDataDBOperationSpec.md deleted file mode 100644 index 7a63c0ef01..0000000000 --- a/python-restclient/docs/FieldDataDBOperationSpec.md +++ /dev/null @@ -1,35 +0,0 @@ -# FieldDataDBOperationSpec - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**op_type** | **int** | | [optional] -**spec_edi** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] -**owner** | [**User**](User.md) | | [optional] -**new_ext_data_id_name** | **str** | | [optional] -**annotation** | **str** | | [optional] -**source_names** | **List[str]** | | [optional] -**source_owner** | [**VersionableTypeVersion**](VersionableTypeVersion.md) | | [optional] -**b_include_sim_refs** | **bool** | | [optional] - -## Example - -```python -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataDBOperationSpec from a JSON string -field_data_db_operation_spec_instance = FieldDataDBOperationSpec.from_json(json) -# print the JSON string representation of the object -print FieldDataDBOperationSpec.to_json() - -# convert the object into a dict -field_data_db_operation_spec_dict = field_data_db_operation_spec_instance.to_dict() -# create an instance of FieldDataDBOperationSpec from a dict -field_data_db_operation_spec_form_dict = field_data_db_operation_spec.from_dict(field_data_db_operation_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataExternalDataIDs.md b/python-restclient/docs/FieldDataExternalDataIDs.md deleted file mode 100644 index bfb424c0ef..0000000000 --- a/python-restclient/docs/FieldDataExternalDataIDs.md +++ /dev/null @@ -1,30 +0,0 @@ -# FieldDataExternalDataIDs - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**external_data_identifiers** | [**List[ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] -**external_data_annotations** | **List[str]** | | [optional] -**external_data_id_sim_refs** | **Dict[str, List[KeyValue]]** | | [optional] - -## Example - -```python -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataExternalDataIDs from a JSON string -field_data_external_data_ids_instance = FieldDataExternalDataIDs.from_json(json) -# print the JSON string representation of the object -print FieldDataExternalDataIDs.to_json() - -# convert the object into a dict -field_data_external_data_ids_dict = field_data_external_data_ids_instance.to_dict() -# create an instance of FieldDataExternalDataIDs from a dict -field_data_external_data_ids_form_dict = field_data_external_data_ids.from_dict(field_data_external_data_ids_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataFileOperationResults.md b/python-restclient/docs/FieldDataFileOperationResults.md deleted file mode 100644 index 52799c6fe2..0000000000 --- a/python-restclient/docs/FieldDataFileOperationResults.md +++ /dev/null @@ -1,34 +0,0 @@ -# FieldDataFileOperationResults - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**data_identifier_arr** | [**List[DataIdentifier]**](DataIdentifier.md) | | [optional] -**external_data_identifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] -**i_size** | [**ISize**](ISize.md) | | [optional] -**origin** | [**Origin**](Origin.md) | | [optional] -**extent** | [**Extent**](Extent.md) | | [optional] -**times** | **List[float]** | | [optional] -**dependant_function_info** | [**List[FieldDataReferenceInfo]**](FieldDataReferenceInfo.md) | | [optional] - -## Example - -```python -from vcell_client.models.field_data_file_operation_results import FieldDataFileOperationResults - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataFileOperationResults from a JSON string -field_data_file_operation_results_instance = FieldDataFileOperationResults.from_json(json) -# print the JSON string representation of the object -print FieldDataFileOperationResults.to_json() - -# convert the object into a dict -field_data_file_operation_results_dict = field_data_file_operation_results_instance.to_dict() -# create an instance of FieldDataFileOperationResults from a dict -field_data_file_operation_results_form_dict = field_data_file_operation_results.from_dict(field_data_file_operation_results_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataFileOperationSpec.md b/python-restclient/docs/FieldDataFileOperationSpec.md deleted file mode 100644 index d224b948b7..0000000000 --- a/python-restclient/docs/FieldDataFileOperationSpec.md +++ /dev/null @@ -1,44 +0,0 @@ -# FieldDataFileOperationSpec - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**op_type** | **int** | | [optional] -**short_spec_data** | **List[List[List[int]]]** | | [optional] -**double_spec_data** | **List[List[List[float]]]** | | [optional] -**cartesian_mesh** | [**CartesianMesh**](CartesianMesh.md) | | [optional] -**spec_edi** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] -**var_names** | **List[str]** | | [optional] -**variable_types** | [**List[VariableType]**](VariableType.md) | | [optional] -**times** | **List[float]** | | [optional] -**owner** | [**User**](User.md) | | [optional] -**origin** | [**Origin**](Origin.md) | | [optional] -**extent** | [**Extent**](Extent.md) | | [optional] -**isize** | [**ISize**](ISize.md) | | [optional] -**annotation** | **str** | | [optional] -**source_sim_param_scan_job_index** | **int** | | [optional] -**source_sim_data_key** | [**KeyValue**](KeyValue.md) | | [optional] -**source_owner** | [**User**](User.md) | | [optional] -**field_data_name** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataFileOperationSpec from a JSON string -field_data_file_operation_spec_instance = FieldDataFileOperationSpec.from_json(json) -# print the JSON string representation of the object -print FieldDataFileOperationSpec.to_json() - -# convert the object into a dict -field_data_file_operation_spec_dict = field_data_file_operation_spec_instance.to_dict() -# create an instance of FieldDataFileOperationSpec from a dict -field_data_file_operation_spec_form_dict = field_data_file_operation_spec.from_dict(field_data_file_operation_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataInfo.md b/python-restclient/docs/FieldDataInfo.md deleted file mode 100644 index 8f30ce2a0b..0000000000 --- a/python-restclient/docs/FieldDataInfo.md +++ /dev/null @@ -1,32 +0,0 @@ -# FieldDataInfo - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**extent** | [**Extent**](Extent.md) | | [optional] -**origin** | [**Origin**](Origin.md) | | [optional] -**isize** | [**ISize**](ISize.md) | | [optional] -**data_identifier** | [**List[DataIdentifier]**](DataIdentifier.md) | | [optional] -**times** | **List[float]** | | [optional] - -## Example - -```python -from vcell_client.models.field_data_info import FieldDataInfo - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataInfo from a JSON string -field_data_info_instance = FieldDataInfo.from_json(json) -# print the JSON string representation of the object -print FieldDataInfo.to_json() - -# convert the object into a dict -field_data_info_dict = field_data_info_instance.to_dict() -# create an instance of FieldDataInfo from a dict -field_data_info_form_dict = field_data_info.from_dict(field_data_info_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataNoCopyConflict.md b/python-restclient/docs/FieldDataNoCopyConflict.md deleted file mode 100644 index c7cdd6b4b0..0000000000 --- a/python-restclient/docs/FieldDataNoCopyConflict.md +++ /dev/null @@ -1,29 +0,0 @@ -# FieldDataNoCopyConflict - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**old_name_new_id_hash** | [**Dict[str, ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] -**old_name_old_ext_data_id_key_hash** | [**Dict[str, KeyValue]**](KeyValue.md) | | [optional] - -## Example - -```python -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataNoCopyConflict from a JSON string -field_data_no_copy_conflict_instance = FieldDataNoCopyConflict.from_json(json) -# print the JSON string representation of the object -print FieldDataNoCopyConflict.to_json() - -# convert the object into a dict -field_data_no_copy_conflict_dict = field_data_no_copy_conflict_instance.to_dict() -# create an instance of FieldDataNoCopyConflict from a dict -field_data_no_copy_conflict_form_dict = field_data_no_copy_conflict.from_dict(field_data_no_copy_conflict_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataReferenceInfo.md b/python-restclient/docs/FieldDataReferenceInfo.md deleted file mode 100644 index 1cd60a9042..0000000000 --- a/python-restclient/docs/FieldDataReferenceInfo.md +++ /dev/null @@ -1,34 +0,0 @@ -# FieldDataReferenceInfo - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**reference_source_type** | **str** | | [optional] -**reference_source_name** | **str** | | [optional] -**application_name** | **str** | | [optional] -**simulation_name** | **str** | | [optional] -**ref_source_version_date** | **str** | | [optional] -**func_names** | **List[str]** | | [optional] -**ref_source_version_key** | [**KeyValue**](KeyValue.md) | | [optional] - -## Example - -```python -from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataReferenceInfo from a JSON string -field_data_reference_info_instance = FieldDataReferenceInfo.from_json(json) -# print the JSON string representation of the object -print FieldDataReferenceInfo.to_json() - -# convert the object into a dict -field_data_reference_info_dict = field_data_reference_info_instance.to_dict() -# create an instance of FieldDataReferenceInfo from a dict -field_data_reference_info_form_dict = field_data_reference_info.from_dict(field_data_reference_info_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/FieldDataReferences.md b/python-restclient/docs/FieldDataReferences.md deleted file mode 100644 index 4d540b6cb4..0000000000 --- a/python-restclient/docs/FieldDataReferences.md +++ /dev/null @@ -1,30 +0,0 @@ -# FieldDataReferences - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**external_data_identifiers** | [**List[ExternalDataIdentifier]**](ExternalDataIdentifier.md) | | [optional] -**external_data_annotations** | **List[str]** | | [optional] -**external_data_id_sim_refs** | **Dict[str, List[KeyValue]]** | | [optional] - -## Example - -```python -from vcell_client.models.field_data_references import FieldDataReferences - -# TODO update the JSON string below -json = "{}" -# create an instance of FieldDataReferences from a JSON string -field_data_references_instance = FieldDataReferences.from_json(json) -# print the JSON string representation of the object -print FieldDataReferences.to_json() - -# convert the object into a dict -field_data_references_dict = field_data_references_instance.to_dict() -# create an instance of FieldDataReferences from a dict -field_data_references_form_dict = field_data_references.from_dict(field_data_references_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/GroupAccess.md b/python-restclient/docs/GroupAccess.md deleted file mode 100644 index 69f9dc09f9..0000000000 --- a/python-restclient/docs/GroupAccess.md +++ /dev/null @@ -1,29 +0,0 @@ -# GroupAccess - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**groupid** | **float** | | [optional] -**description** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.group_access import GroupAccess - -# TODO update the JSON string below -json = "{}" -# create an instance of GroupAccess from a JSON string -group_access_instance = GroupAccess.from_json(json) -# print the JSON string representation of the object -print GroupAccess.to_json() - -# convert the object into a dict -group_access_dict = group_access_instance.to_dict() -# create an instance of GroupAccess from a dict -group_access_form_dict = group_access.from_dict(group_access_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/IdentityProvider.md b/python-restclient/docs/IdentityProvider.md deleted file mode 100644 index 15580c3542..0000000000 --- a/python-restclient/docs/IdentityProvider.md +++ /dev/null @@ -1,10 +0,0 @@ -# IdentityProvider - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/MapUser.md b/python-restclient/docs/MapUser.md deleted file mode 100644 index 8145afae0b..0000000000 --- a/python-restclient/docs/MapUser.md +++ /dev/null @@ -1,29 +0,0 @@ -# MapUser - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**user_id** | **str** | | [optional] -**password** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.map_user import MapUser - -# TODO update the JSON string below -json = "{}" -# create an instance of MapUser from a JSON string -map_user_instance = MapUser.from_json(json) -# print the JSON string representation of the object -print MapUser.to_json() - -# convert the object into a dict -map_user_dict = map_user_instance.to_dict() -# create an instance of MapUser from a dict -map_user_form_dict = map_user.from_dict(map_user_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/OverrideRepresentation.md b/python-restclient/docs/OverrideRepresentation.md deleted file mode 100644 index 6864eddf9b..0000000000 --- a/python-restclient/docs/OverrideRepresentation.md +++ /dev/null @@ -1,32 +0,0 @@ -# OverrideRepresentation - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **str** | | [optional] -**type** | **str** | | [optional] -**expression** | **str** | | [optional] -**values** | **List[str]** | | [optional] -**cardinality** | **int** | | [optional] - -## Example - -```python -from vcell_client.models.override_representation import OverrideRepresentation - -# TODO update the JSON string below -json = "{}" -# create an instance of OverrideRepresentation from a JSON string -override_representation_instance = OverrideRepresentation.from_json(json) -# print the JSON string representation of the object -print OverrideRepresentation.to_json() - -# convert the object into a dict -override_representation_dict = override_representation_instance.to_dict() -# create an instance of OverrideRepresentation from a dict -override_representation_form_dict = override_representation.from_dict(override_representation_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/SaveFieldDataFromFile.md b/python-restclient/docs/SaveFieldDataFromFile.md deleted file mode 100644 index f1562adfcb..0000000000 --- a/python-restclient/docs/SaveFieldDataFromFile.md +++ /dev/null @@ -1,35 +0,0 @@ -# SaveFieldDataFromFile - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**short_spec_data** | **List[List[List[int]]]** | | [optional] -**var_names** | **List[str]** | | [optional] -**times** | **List[float]** | | [optional] -**origin** | [**Origin**](Origin.md) | | [optional] -**extent** | [**Extent**](Extent.md) | | [optional] -**isize** | [**ISize**](ISize.md) | | [optional] -**annotation** | **str** | | [optional] -**name** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.save_field_data_from_file import SaveFieldDataFromFile - -# TODO update the JSON string below -json = "{}" -# create an instance of SaveFieldDataFromFile from a JSON string -save_field_data_from_file_instance = SaveFieldDataFromFile.from_json(json) -# print the JSON string representation of the object -print SaveFieldDataFromFile.to_json() - -# convert the object into a dict -save_field_data_from_file_dict = save_field_data_from_file_instance.to_dict() -# create an instance of SaveFieldDataFromFile from a dict -save_field_data_from_file_form_dict = save_field_data_from_file.from_dict(save_field_data_from_file_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/Simulation.md b/python-restclient/docs/Simulation.md deleted file mode 100644 index 0d1753ab86..0000000000 --- a/python-restclient/docs/Simulation.md +++ /dev/null @@ -1,28 +0,0 @@ -# Simulation - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.simulation import Simulation - -# TODO update the JSON string below -json = "{}" -# create an instance of Simulation from a JSON string -simulation_instance = Simulation.from_json(json) -# print the JSON string representation of the object -print Simulation.to_json() - -# convert the object into a dict -simulation_dict = simulation_instance.to_dict() -# create an instance of Simulation from a dict -simulation_form_dict = simulation.from_dict(simulation_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/SimulationExecutionStatus.md b/python-restclient/docs/SimulationExecutionStatus.md deleted file mode 100644 index d664fc0592..0000000000 --- a/python-restclient/docs/SimulationExecutionStatus.md +++ /dev/null @@ -1,38 +0,0 @@ -# SimulationExecutionStatus - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**field_start_date** | **date** | | [optional] -**field_latest_update_date** | **date** | | [optional] -**field_end_date** | **date** | | [optional] -**field_compute_host** | **str** | | [optional] -**field_has_data** | **bool** | | [optional] -**field_htc_job_id** | [**HtcJobID**](HtcJobID.md) | | [optional] -**compute_host** | **str** | | [optional] -**end_date** | **date** | | [optional] -**latest_update_date** | **date** | | [optional] -**start_date** | **date** | | [optional] -**htc_job_id** | [**HtcJobID**](HtcJobID.md) | | [optional] - -## Example - -```python -from vcell_client.models.simulation_execution_status import SimulationExecutionStatus - -# TODO update the JSON string below -json = "{}" -# create an instance of SimulationExecutionStatus from a JSON string -simulation_execution_status_instance = SimulationExecutionStatus.from_json(json) -# print the JSON string representation of the object -print SimulationExecutionStatus.to_json() - -# convert the object into a dict -simulation_execution_status_dict = simulation_execution_status_instance.to_dict() -# create an instance of SimulationExecutionStatus from a dict -simulation_execution_status_form_dict = simulation_execution_status.from_dict(simulation_execution_status_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/SimulationJobStatus.md b/python-restclient/docs/SimulationJobStatus.md deleted file mode 100644 index 25fa022403..0000000000 --- a/python-restclient/docs/SimulationJobStatus.md +++ /dev/null @@ -1,50 +0,0 @@ -# SimulationJobStatus - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**field_time_date_stamp** | **date** | | [optional] -**field_vc_sim_id** | [**VCSimulationIdentifier**](VCSimulationIdentifier.md) | | [optional] -**field_submit_date** | **date** | | [optional] -**field_scheduler_status** | [**SchedulerStatus**](SchedulerStatus.md) | | [optional] -**field_task_id** | **int** | | [optional] -**field_simulation_message** | [**SimulationMessage**](SimulationMessage.md) | | [optional] -**field_server_id** | [**VCellServerID**](VCellServerID.md) | | [optional] -**field_job_index** | **int** | | [optional] -**field_simulation_queue_entry_status** | [**SimulationQueueEntryStatus**](SimulationQueueEntryStatus.md) | | [optional] -**field_simulation_execution_status** | [**SimulationExecutionStatus**](SimulationExecutionStatus.md) | | [optional] -**compute_host** | **str** | | [optional] -**end_date** | **date** | | [optional] -**job_index** | **int** | | [optional] -**scheduler_status** | [**SchedulerStatus**](SchedulerStatus.md) | | [optional] -**server_id** | [**VCellServerID**](VCellServerID.md) | | [optional] -**simulation_execution_status** | [**SimulationExecutionStatus**](SimulationExecutionStatus.md) | | [optional] -**simulation_queue_entry_status** | [**SimulationQueueEntryStatus**](SimulationQueueEntryStatus.md) | | [optional] -**start_date** | **date** | | [optional] -**simulation_message** | [**SimulationMessage**](SimulationMessage.md) | | [optional] -**submit_date** | **date** | | [optional] -**task_id** | **int** | | [optional] -**time_date_stamp** | **date** | | [optional] -**v_c_simulation_identifier** | [**VCSimulationIdentifier**](VCSimulationIdentifier.md) | | [optional] - -## Example - -```python -from vcell_client.models.simulation_job_status import SimulationJobStatus - -# TODO update the JSON string below -json = "{}" -# create an instance of SimulationJobStatus from a JSON string -simulation_job_status_instance = SimulationJobStatus.from_json(json) -# print the JSON string representation of the object -print SimulationJobStatus.to_json() - -# convert the object into a dict -simulation_job_status_dict = simulation_job_status_instance.to_dict() -# create an instance of SimulationJobStatus from a dict -simulation_job_status_form_dict = simulation_job_status.from_dict(simulation_job_status_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/SimulationQueueEntryStatus.md b/python-restclient/docs/SimulationQueueEntryStatus.md deleted file mode 100644 index 28b15d948e..0000000000 --- a/python-restclient/docs/SimulationQueueEntryStatus.md +++ /dev/null @@ -1,33 +0,0 @@ -# SimulationQueueEntryStatus - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**field_queue_priority** | **int** | | [optional] -**field_queue_date** | **date** | | [optional] -**field_queue_id** | [**SimulationQueueID**](SimulationQueueID.md) | | [optional] -**queue_date** | **date** | | [optional] -**queue_id** | [**SimulationQueueID**](SimulationQueueID.md) | | [optional] -**queue_priority** | **int** | | [optional] - -## Example - -```python -from vcell_client.models.simulation_queue_entry_status import SimulationQueueEntryStatus - -# TODO update the JSON string below -json = "{}" -# create an instance of SimulationQueueEntryStatus from a JSON string -simulation_queue_entry_status_instance = SimulationQueueEntryStatus.from_json(json) -# print the JSON string representation of the object -print SimulationQueueEntryStatus.to_json() - -# convert the object into a dict -simulation_queue_entry_status_dict = simulation_queue_entry_status_instance.to_dict() -# create an instance of SimulationQueueEntryStatus from a dict -simulation_queue_entry_status_form_dict = simulation_queue_entry_status.from_dict(simulation_queue_entry_status_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/UCDInfo.md b/python-restclient/docs/UCDInfo.md deleted file mode 100644 index 9e958d8e97..0000000000 --- a/python-restclient/docs/UCDInfo.md +++ /dev/null @@ -1,39 +0,0 @@ -# UCDInfo - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**ucd_grid_nodes** | **List[List[List[Coordinate]]]** | | [optional] -**ucd_membrane_quads** | **List[List[int]]** | | [optional] -**reduced_ucd_grid_nodes_v** | [**List[Coordinate]**](Coordinate.md) | | [optional] -**u_cd_grid_nodes** | **List[List[List[Coordinate]]]** | | [optional] -**u_cd_membrane_quads** | **List[List[int]]** | | [optional] -**num_volume_nodes_x** | **int** | | [optional] -**num_volume_nodes_y** | **int** | | [optional] -**num_volume_nodes_z** | **int** | | [optional] -**num_points_xyz** | **int** | | [optional] -**num_volume_nodes_xy** | **int** | | [optional] -**num_volume_cells** | **int** | | [optional] -**num_membrane_cells** | **int** | | [optional] - -## Example - -```python -from vcell_client.models.ucd_info import UCDInfo - -# TODO update the JSON string below -json = "{}" -# create an instance of UCDInfo from a JSON string -ucd_info_instance = UCDInfo.from_json(json) -# print the JSON string representation of the object -print UCDInfo.to_json() - -# convert the object into a dict -ucd_info_dict = ucd_info_instance.to_dict() -# create an instance of UCDInfo from a dict -ucd_info_form_dict = ucd_info.from_dict(ucd_info_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/User1.md b/python-restclient/docs/User1.md deleted file mode 100644 index 6645ab4fe7..0000000000 --- a/python-restclient/docs/User1.md +++ /dev/null @@ -1,33 +0,0 @@ -# User1 - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**user_name** | **str** | | [optional] -**key** | [**KeyValue**](KeyValue.md) | | [optional] -**i_d** | [**KeyValue**](KeyValue.md) | | [optional] -**name** | **str** | | [optional] -**publisher** | **bool** | | [optional] -**test_account** | **bool** | | [optional] - -## Example - -```python -from vcell_client.models.user1 import User1 - -# TODO update the JSON string below -json = "{}" -# create an instance of User1 from a JSON string -user1_instance = User1.from_json(json) -# print the JSON string representation of the object -print User1.to_json() - -# convert the object into a dict -user1_dict = user1_instance.to_dict() -# create an instance of User1 from a dict -user1_form_dict = user1.from_dict(user1_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/UserIdentity.md b/python-restclient/docs/UserIdentity.md deleted file mode 100644 index 067b0609ba..0000000000 --- a/python-restclient/docs/UserIdentity.md +++ /dev/null @@ -1,31 +0,0 @@ -# UserIdentity - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **float** | | [optional] -**user_name** | **str** | | [optional] -**subject** | **str** | | [optional] -**insert_date** | **datetime** | | [optional] - -## Example - -```python -from vcell_client.models.user_identity import UserIdentity - -# TODO update the JSON string below -json = "{}" -# create an instance of UserIdentity from a JSON string -user_identity_instance = UserIdentity.from_json(json) -# print the JSON string representation of the object -print UserIdentity.to_json() - -# convert the object into a dict -user_identity_dict = user_identity_instance.to_dict() -# create an instance of UserIdentity from a dict -user_identity_form_dict = user_identity.from_dict(user_identity_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/VCellServerID.md b/python-restclient/docs/VCellServerID.md deleted file mode 100644 index c1c3d8636d..0000000000 --- a/python-restclient/docs/VCellServerID.md +++ /dev/null @@ -1,28 +0,0 @@ -# VCellServerID - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**server_id** | **str** | | [optional] - -## Example - -```python -from vcell_client.models.v_cell_server_id import VCellServerID - -# TODO update the JSON string below -json = "{}" -# create an instance of VCellServerID from a JSON string -v_cell_server_id_instance = VCellServerID.from_json(json) -# print the JSON string representation of the object -print VCellServerID.to_json() - -# convert the object into a dict -v_cell_server_id_dict = v_cell_server_id_instance.to_dict() -# create an instance of VCellServerID from a dict -v_cell_server_id_form_dict = v_cell_server_id.from_dict(v_cell_server_id_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/Version.md b/python-restclient/docs/Version.md deleted file mode 100644 index 455ffd1372..0000000000 --- a/python-restclient/docs/Version.md +++ /dev/null @@ -1,44 +0,0 @@ -# Version - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**version_key** | [**KeyValue**](KeyValue.md) | | [optional] -**version_name** | **str** | | [optional] -**version_owner** | [**User**](User.md) | | [optional] -**version_group_access** | [**GroupAccess**](GroupAccess.md) | | [optional] -**version_branch_point_ref** | [**KeyValue**](KeyValue.md) | | [optional] -**version_branch_id** | **float** | | [optional] -**version_date** | **date** | | [optional] -**version_flag** | [**VersionFlag**](VersionFlag.md) | | [optional] -**version_annot** | **str** | | [optional] -**annot** | **str** | | [optional] -**branch_id** | **float** | | [optional] -**branch_point_ref_key** | [**KeyValue**](KeyValue.md) | | [optional] -**var_date** | **date** | | [optional] -**flag** | [**VersionFlag**](VersionFlag.md) | | [optional] -**group_access** | [**GroupAccess**](GroupAccess.md) | | [optional] -**name** | **str** | | [optional] -**owner** | [**User**](User.md) | | [optional] - -## Example - -```python -from vcell_client.models.version import Version - -# TODO update the JSON string below -json = "{}" -# create an instance of Version from a JSON string -version_instance = Version.from_json(json) -# print the JSON string representation of the object -print Version.to_json() - -# convert the object into a dict -version_dict = version_instance.to_dict() -# create an instance of Version from a dict -version_form_dict = version.from_dict(version_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/VersionFlag.md b/python-restclient/docs/VersionFlag.md deleted file mode 100644 index ae72813eb1..0000000000 --- a/python-restclient/docs/VersionFlag.md +++ /dev/null @@ -1,32 +0,0 @@ -# VersionFlag - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**version_flag** | **int** | | [optional] -**int_value** | **int** | | [optional] -**archived** | **bool** | | [optional] -**current** | **bool** | | [optional] -**published** | **bool** | | [optional] - -## Example - -```python -from vcell_client.models.version_flag import VersionFlag - -# TODO update the JSON string below -json = "{}" -# create an instance of VersionFlag from a JSON string -version_flag_instance = VersionFlag.from_json(json) -# print the JSON string representation of the object -print VersionFlag.to_json() - -# convert the object into a dict -version_flag_dict = version_flag_instance.to_dict() -# create an instance of VersionFlag from a dict -version_flag_form_dict = version_flag.from_dict(version_flag_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/VersionableType.md b/python-restclient/docs/VersionableType.md deleted file mode 100644 index d2908a7354..0000000000 --- a/python-restclient/docs/VersionableType.md +++ /dev/null @@ -1,35 +0,0 @@ -# VersionableType - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**v_type** | **int** | | [optional] -**name** | **str** | | [optional] -**v_class** | **object** | | [optional] -**b_top_level** | **bool** | | [optional] -**code** | **int** | | [optional] -**is_top_level** | **bool** | | [optional] -**type_name** | **str** | | [optional] -**version_class** | **object** | | [optional] - -## Example - -```python -from vcell_client.models.versionable_type import VersionableType - -# TODO update the JSON string below -json = "{}" -# create an instance of VersionableType from a JSON string -versionable_type_instance = VersionableType.from_json(json) -# print the JSON string representation of the object -print VersionableType.to_json() - -# convert the object into a dict -versionable_type_dict = versionable_type_instance.to_dict() -# create an instance of VersionableType from a dict -versionable_type_form_dict = versionable_type.from_dict(versionable_type_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/docs/VersionableTypeVersion.md b/python-restclient/docs/VersionableTypeVersion.md deleted file mode 100644 index 1efb639535..0000000000 --- a/python-restclient/docs/VersionableTypeVersion.md +++ /dev/null @@ -1,29 +0,0 @@ -# VersionableTypeVersion - - -## Properties -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**v_type** | [**VersionableType**](VersionableType.md) | | [optional] -**version** | [**Version**](Version.md) | | [optional] - -## Example - -```python -from vcell_client.models.versionable_type_version import VersionableTypeVersion - -# TODO update the JSON string below -json = "{}" -# create an instance of VersionableTypeVersion from a JSON string -versionable_type_version_instance = VersionableTypeVersion.from_json(json) -# print the JSON string representation of the object -print VersionableTypeVersion.to_json() - -# convert the object into a dict -versionable_type_version_dict = versionable_type_version_instance.to_dict() -# create an instance of VersionableTypeVersion from a dict -versionable_type_version_form_dict = versionable_type_version.from_dict(versionable_type_version_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/python-restclient/pyproject.toml b/python-restclient/pyproject.toml index 6af8dcc9dd..ec8675c605 100644 --- a/python-restclient/pyproject.toml +++ b/python-restclient/pyproject.toml @@ -10,15 +10,12 @@ keywords = ["OpenAPI", "OpenAPI-Generator", "VCell API"] include = ["vcell_client/py.typed"] [tool.poetry.dependencies] -python = "3.10.*" +python = "^3.7" urllib3 = ">= 1.25.3" python-dateutil = ">=2.8.2" -pydantic = ">=2.10.4" -typing-extensions = ">=4.6.0" -pandas = ">=2" -jupyter = "^1.1.1" -requests_oauth2client = ">=1.6.0" +pydantic = ">=2" +typing-extensions = ">=4.7.1" [tool.poetry.dev-dependencies] pytest = ">=7.2.1" diff --git a/python-restclient/test/test_access_token_representation.py b/python-restclient/test/test_access_token_representation.py deleted file mode 100644 index 990a8cf968..0000000000 --- a/python-restclient/test/test_access_token_representation.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.access_token_representation import AccessTokenRepresentation - -class TestAccessTokenRepresentation(unittest.TestCase): - """AccessTokenRepresentation unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> AccessTokenRepresentation: - """Test AccessTokenRepresentation - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `AccessTokenRepresentation` - """ - model = AccessTokenRepresentation() - if include_optional: - return AccessTokenRepresentation( - token = '', - creation_date_seconds = 56, - expire_date_seconds = 56, - user_id = '', - user_key = '' - ) - else: - return AccessTokenRepresentation( - ) - """ - - def testAccessTokenRepresentation(self): - """Test AccessTokenRepresentation""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_analyzed_results_from_field_data.py b/python-restclient/test/test_analyzed_results_from_field_data.py index 785f9b9781..1d6a48aec4 100644 --- a/python-restclient/test/test_analyzed_results_from_field_data.py +++ b/python-restclient/test/test_analyzed_results_from_field_data.py @@ -61,8 +61,7 @@ def make_instance(self, include_optional) -> AnalyzedResultsFromFieldData: isize = vcell_client.models.i_size.ISize( x = 56, y = 56, - z = 56, - x_yz = 56, ), + z = 56, ), annotation = '', name = '' ) diff --git a/python-restclient/test/test_bio_model.py b/python-restclient/test/test_bio_model.py index 1e99c4c553..5232c011f8 100644 --- a/python-restclient/test/test_bio_model.py +++ b/python-restclient/test/test_bio_model.py @@ -46,12 +46,12 @@ def make_instance(self, include_optional) -> BioModel: saved_date = 56, annot = '', branch_id = '', - model_key = '', + phys_model_key = '', owner_name = '', owner_key = '', - simulations = [ - vcell_client.models.simulation.Simulation( - name = '', ) + simulation_key_list = [ + vcell_client.models.key_value.KeyValue( + value = 1.337, ) ], applications = [ vcell_client.models.application.Application() diff --git a/python-restclient/test/test_bio_model_resource_api.py b/python-restclient/test/test_bio_model_resource_api.py index d1aa4c6bb7..fea6ab89d1 100644 --- a/python-restclient/test/test_bio_model_resource_api.py +++ b/python-restclient/test/test_bio_model_resource_api.py @@ -34,41 +34,6 @@ def test_delete_bio_model(self) -> None: """ pass - def test_get_bio_model_bngl(self) -> None: - """Test case for get_bio_model_bngl - - Get the BioModel in BNGL format. - """ - pass - - def test_get_bio_model_diagram(self) -> None: - """Test case for get_bio_model_diagram - - Get the BioModels diagram. - """ - pass - - def test_get_bio_model_omex(self) -> None: - """Test case for get_bio_model_omex - - Get the BioModel in OMEX format. - """ - pass - - def test_get_bio_model_sbml(self) -> None: - """Test case for get_bio_model_sbml - - Get the BioModel in SBML format. - """ - pass - - def test_get_bio_model_vcml(self) -> None: - """Test case for get_bio_model_vcml - - Get the BioModel in VCML format. - """ - pass - def test_get_biomodel_by_id(self) -> None: """Test case for get_biomodel_by_id diff --git a/python-restclient/test/test_biomodel_ref.py b/python-restclient/test/test_biomodel_ref.py index 6488da0a94..26a1cc76e6 100644 --- a/python-restclient/test/test_biomodel_ref.py +++ b/python-restclient/test/test_biomodel_ref.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API diff --git a/python-restclient/test/test_cartesian_mesh.py b/python-restclient/test/test_cartesian_mesh.py deleted file mode 100644 index fe355830b1..0000000000 --- a/python-restclient/test/test_cartesian_mesh.py +++ /dev/null @@ -1,118 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.cartesian_mesh import CartesianMesh - -class TestCartesianMesh(unittest.TestCase): - """CartesianMesh unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> CartesianMesh: - """Test CartesianMesh - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `CartesianMesh` - """ - model = CartesianMesh() - if include_optional: - return CartesianMesh( - compressed_bytes = bytes(b'blah'), - u_cd_info = vcell_client.models.ucd_info.UCDInfo( - ucd_grid_nodes = [ - [ - [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ] - ] - ], - ucd_membrane_quads = [ - [ - 56 - ] - ], - reduced_ucd_grid_nodes_v = [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ], - u_cd_grid_nodes = [ - [ - [ - - ] - ] - ], - u_cd_membrane_quads = [ - [ - 56 - ] - ], - num_volume_nodes_x = 56, - num_volume_nodes_y = 56, - num_volume_nodes_z = 56, - num_points_xyz = 56, - num_volume_nodes_xy = 56, - num_volume_cells = 56, - num_membrane_cells = 56, ), - geometry_dimension = 56, - volume_region_map_subvolume = { - 'key' : 56 - }, - membrane_region_map_subvolumes_in_out = { - 'key' : null - }, - num_membrane_elements = 56, - num_membrane_regions = 56, - num_volume_elements = 56, - num_volume_regions = 56, - i_size = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - size_x = 56, - size_y = 56, - size_z = 56, - membrane_connectivity_ok = True, - output_fields = [ - null - ], - chombo_mesh = True - ) - else: - return CartesianMesh( - ) - """ - - def testCartesianMesh(self): - """Test CartesianMesh""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_coordinate.py b/python-restclient/test/test_coordinate.py deleted file mode 100644 index a489a4e76c..0000000000 --- a/python-restclient/test/test_coordinate.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.coordinate import Coordinate - -class TestCoordinate(unittest.TestCase): - """Coordinate unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> Coordinate: - """Test Coordinate - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `Coordinate` - """ - model = Coordinate() - if include_optional: - return Coordinate( - x = 1.337, - y = 1.337, - z = 1.337 - ) - else: - return Coordinate( - ) - """ - - def testCoordinate(self): - """Test Coordinate""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_external_data_identifier.py b/python-restclient/test/test_external_data_identifier.py index ff3a9136fe..b6f749ab0d 100644 --- a/python-restclient/test/test_external_data_identifier.py +++ b/python-restclient/test/test_external_data_identifier.py @@ -43,12 +43,9 @@ def make_instance(self, include_optional) -> ExternalDataIdentifier: user_name = '', key = vcell_client.models.key_value.KeyValue( value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), name = '', test_account = True, ), name = '', - i_d = '', job_index = 56, simulation_key = vcell_client.models.key_value.KeyValue( value = 1.337, ), diff --git a/python-restclient/test/test_field_data_db_operation_spec.py b/python-restclient/test/test_field_data_db_operation_spec.py deleted file mode 100644 index e2d11e9eed..0000000000 --- a/python-restclient/test/test_field_data_db_operation_spec.py +++ /dev/null @@ -1,131 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_db_operation_spec import FieldDataDBOperationSpec - -class TestFieldDataDBOperationSpec(unittest.TestCase): - """FieldDataDBOperationSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataDBOperationSpec: - """Test FieldDataDBOperationSpec - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataDBOperationSpec` - """ - model = FieldDataDBOperationSpec() - if include_optional: - return FieldDataDBOperationSpec( - op_type = 56, - spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ), - owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - new_ext_data_id_name = '', - annotation = '', - source_names = [ - '' - ], - source_owner = vcell_client.models.versionable_type_version.VersionableTypeVersion( - v_type = vcell_client.models.versionable_type.VersionableType( - name = '', - v_class = vcell_client.models.v_class.vClass(), - b_top_level = True, - code = 56, - is_top_level = True, - type_name = '', - version_class = vcell_client.models.version_class.versionClass(), ), - version = vcell_client.models.version.Version( - version_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - version_name = '', - version_owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = , - name = '', - test_account = True, ), - version_group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - version_branch_point_ref = , - version_branch_id = 1.337, - version_date = 'Thu Mar 10 00:00:00 UTC 2022', - version_flag = vcell_client.models.version_flag.VersionFlag( - int_value = 56, - archived = True, - current = True, - published = True, ), - version_annot = '', - annot = '', - branch_id = 1.337, - branch_point_ref_key = , - date = 'Thu Mar 10 00:00:00 UTC 2022', - flag = vcell_client.models.version_flag.VersionFlag( - int_value = 56, - archived = True, - current = True, - published = True, ), - group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - name = '', - owner = vcell_client.models.user.User( - user_name = '', - name = '', - test_account = True, ), ), ), - b_include_sim_refs = True - ) - else: - return FieldDataDBOperationSpec( - ) - """ - - def testFieldDataDBOperationSpec(self): - """Test FieldDataDBOperationSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_external_data_ids.py b/python-restclient/test/test_field_data_external_data_ids.py deleted file mode 100644 index 5bf523de21..0000000000 --- a/python-restclient/test/test_field_data_external_data_ids.py +++ /dev/null @@ -1,78 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_external_data_ids import FieldDataExternalDataIDs - -class TestFieldDataExternalDataIDs(unittest.TestCase): - """FieldDataExternalDataIDs unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataExternalDataIDs: - """Test FieldDataExternalDataIDs - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataExternalDataIDs` - """ - model = FieldDataExternalDataIDs() - if include_optional: - return FieldDataExternalDataIDs( - external_data_identifiers = [ - vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ) - ], - external_data_annotations = [ - '' - ], - external_data_id_sim_refs = { - 'key' : [ - vcell_client.models.key_value.KeyValue( - value = 1.337, ) - ] - } - ) - else: - return FieldDataExternalDataIDs( - ) - """ - - def testFieldDataExternalDataIDs(self): - """Test FieldDataExternalDataIDs""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_file_operation_results.py b/python-restclient/test/test_field_data_file_operation_results.py deleted file mode 100644 index 70d9dbaad7..0000000000 --- a/python-restclient/test/test_field_data_file_operation_results.py +++ /dev/null @@ -1,101 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_file_operation_results import FieldDataFileOperationResults - -class TestFieldDataFileOperationResults(unittest.TestCase): - """FieldDataFileOperationResults unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataFileOperationResults: - """Test FieldDataFileOperationResults - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataFileOperationResults` - """ - model = FieldDataFileOperationResults() - if include_optional: - return FieldDataFileOperationResults( - data_identifier_arr = [ - vcell_client.models.data_identifier.DataIdentifier( - name = '', - display_name = '', - variable_type = vcell_client.models.variable_type.VariableType( - type = 56, - variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', - name = '', - units = '', - label = '', - legacy_warn = True, - default_label = '', - default_units = '', - type_name = '', ), - domain = vcell_client.models.domain.Domain( - name = '', ), - b_function = True, - function = True, - visible = True, ) - ], - i_size = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - origin = vcell_client.models.origin.Origin( - x = 1.337, - y = 1.337, - z = 1.337, ), - extent = vcell_client.models.extent.Extent( - x = 1.337, - y = 1.337, - z = 1.337, ), - times = [ - 1.337 - ], - dependant_function_info = [ - vcell_client.models.field_data_reference_info.FieldDataReferenceInfo( - reference_source_type = '', - reference_source_name = '', - application_name = '', - simulation_name = '', - ref_source_version_date = '', - func_names = [ - '' - ], - ref_source_version_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), ) - ] - ) - else: - return FieldDataFileOperationResults( - ) - """ - - def testFieldDataFileOperationResults(self): - """Test FieldDataFileOperationResults""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_file_operation_spec.py b/python-restclient/test/test_field_data_file_operation_spec.py deleted file mode 100644 index 058ba9b590..0000000000 --- a/python-restclient/test/test_field_data_file_operation_spec.py +++ /dev/null @@ -1,200 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_file_operation_spec import FieldDataFileOperationSpec - -class TestFieldDataFileOperationSpec(unittest.TestCase): - """FieldDataFileOperationSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataFileOperationSpec: - """Test FieldDataFileOperationSpec - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataFileOperationSpec` - """ - model = FieldDataFileOperationSpec() - if include_optional: - return FieldDataFileOperationSpec( - op_type = 56, - short_spec_data = [ - [ - [ - 56 - ] - ] - ], - double_spec_data = [ - [ - [ - 1.337 - ] - ] - ], - cartesian_mesh = vcell_client.models.cartesian_mesh.CartesianMesh( - compressed_bytes = bytes(b'blah'), - u_cd_info = vcell_client.models.ucd_info.UCDInfo( - ucd_grid_nodes = [ - [ - [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ] - ] - ], - ucd_membrane_quads = [ - [ - 56 - ] - ], - reduced_ucd_grid_nodes_v = [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ], - u_cd_grid_nodes = [ - [ - [ - - ] - ] - ], - u_cd_membrane_quads = [ - [ - 56 - ] - ], - num_volume_nodes_x = 56, - num_volume_nodes_y = 56, - num_volume_nodes_z = 56, - num_points_xyz = 56, - num_volume_nodes_xy = 56, - num_volume_cells = 56, - num_membrane_cells = 56, ), - geometry_dimension = 56, - volume_region_map_subvolume = { - 'key' : 56 - }, - membrane_region_map_subvolumes_in_out = { - 'key' : null - }, - num_membrane_elements = 56, - num_membrane_regions = 56, - num_volume_elements = 56, - num_volume_regions = 56, - i_size = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - size_x = 56, - size_y = 56, - size_z = 56, - membrane_connectivity_ok = True, - output_fields = [ - null - ], - chombo_mesh = True, ), - spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ), - var_names = [ - '' - ], - variable_types = [ - vcell_client.models.variable_type.VariableType( - type = 56, - variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', - name = '', - units = '', - label = '', - legacy_warn = True, - default_label = '', - default_units = '', - type_name = '', ) - ], - times = [ - 1.337 - ], - owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - origin = vcell_client.models.origin.Origin( - x = 1.337, - y = 1.337, - z = 1.337, ), - extent = vcell_client.models.extent.Extent( - x = 1.337, - y = 1.337, - z = 1.337, ), - isize = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - annotation = '', - source_sim_param_scan_job_index = 56, - source_sim_data_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - source_owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ) - ) - else: - return FieldDataFileOperationSpec( - ) - """ - - def testFieldDataFileOperationSpec(self): - """Test FieldDataFileOperationSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_info.py b/python-restclient/test/test_field_data_info.py deleted file mode 100644 index 54c81da783..0000000000 --- a/python-restclient/test/test_field_data_info.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_info import FieldDataInfo - -class TestFieldDataInfo(unittest.TestCase): - """FieldDataInfo unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataInfo: - """Test FieldDataInfo - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataInfo` - """ - model = FieldDataInfo() - if include_optional: - return FieldDataInfo( - extent = vcell_client.models.extent.Extent( - x = 1.337, - y = 1.337, - z = 1.337, ), - origin = vcell_client.models.origin.Origin( - x = 1.337, - y = 1.337, - z = 1.337, ), - isize = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - times = [ - 1.337 - ] - ) - else: - return FieldDataInfo( - ) - """ - - def testFieldDataInfo(self): - """Test FieldDataInfo""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_no_copy_conflict.py b/python-restclient/test/test_field_data_no_copy_conflict.py deleted file mode 100644 index 559aa101cd..0000000000 --- a/python-restclient/test/test_field_data_no_copy_conflict.py +++ /dev/null @@ -1,73 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_no_copy_conflict import FieldDataNoCopyConflict - -class TestFieldDataNoCopyConflict(unittest.TestCase): - """FieldDataNoCopyConflict unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataNoCopyConflict: - """Test FieldDataNoCopyConflict - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataNoCopyConflict` - """ - model = FieldDataNoCopyConflict() - if include_optional: - return FieldDataNoCopyConflict( - old_name_new_id_hash = { - 'key' : vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ) - }, - old_name_old_ext_data_id_key_hash = { - 'key' : vcell_client.models.key_value.KeyValue( - value = 1.337, ) - } - ) - else: - return FieldDataNoCopyConflict( - ) - """ - - def testFieldDataNoCopyConflict(self): - """Test FieldDataNoCopyConflict""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_reference.py b/python-restclient/test/test_field_data_reference.py index 714789fb37..a2db444a9a 100644 --- a/python-restclient/test/test_field_data_reference.py +++ b/python-restclient/test/test_field_data_reference.py @@ -42,14 +42,12 @@ def make_instance(self, include_optional) -> FieldDataReference: value = 1.337, ), owner = vcell_client.models.user.User( user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), name = '', test_account = True, ), name = '', - i_d = '', job_index = 56, - simulation_key = , + simulation_key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), parameter_scan_type = True, data_key = , ), external_data_annotation = '', diff --git a/python-restclient/test/test_field_data_reference_info.py b/python-restclient/test/test_field_data_reference_info.py deleted file mode 100644 index aca9a76da3..0000000000 --- a/python-restclient/test/test_field_data_reference_info.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo - -class TestFieldDataReferenceInfo(unittest.TestCase): - """FieldDataReferenceInfo unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataReferenceInfo: - """Test FieldDataReferenceInfo - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataReferenceInfo` - """ - model = FieldDataReferenceInfo() - if include_optional: - return FieldDataReferenceInfo( - reference_source_type = '', - reference_source_name = '', - application_name = '', - simulation_name = '', - ref_source_version_date = '', - func_names = [ - '' - ], - ref_source_version_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ) - ) - else: - return FieldDataReferenceInfo( - ) - """ - - def testFieldDataReferenceInfo(self): - """Test FieldDataReferenceInfo""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_references.py b/python-restclient/test/test_field_data_references.py deleted file mode 100644 index 9d3009a591..0000000000 --- a/python-restclient/test/test_field_data_references.py +++ /dev/null @@ -1,78 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.field_data_references import FieldDataReferences - -class TestFieldDataReferences(unittest.TestCase): - """FieldDataReferences unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> FieldDataReferences: - """Test FieldDataReferences - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `FieldDataReferences` - """ - model = FieldDataReferences() - if include_optional: - return FieldDataReferences( - external_data_identifiers = [ - vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ) - ], - external_data_annotations = [ - '' - ], - external_data_id_sim_refs = { - 'key' : [ - vcell_client.models.key_value.KeyValue( - value = 1.337, ) - ] - } - ) - else: - return FieldDataReferences( - ) - """ - - def testFieldDataReferences(self): - """Test FieldDataReferences""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_field_data_resource_api.py b/python-restclient/test/test_field_data_resource_api.py index 37d45bfae6..223c7efcba 100644 --- a/python-restclient/test/test_field_data_resource_api.py +++ b/python-restclient/test/test_field_data_resource_api.py @@ -27,37 +27,38 @@ def setUp(self) -> None: def tearDown(self) -> None: pass - def test_copy_field_data(self) -> None: - """Test case for copy_field_data + def test_analyze_field_data_file(self) -> None: + """Test case for analyze_field_data_file - Copy an existing field data entry. + Analyze the field data from the uploaded file. Filenames must be lowercase alphanumeric, and can contain underscores. """ pass - def test_create_new_field_data_file(self) -> None: - """Test case for create_new_field_data_file + def test_create_field_data_from_analyzed_file(self) -> None: + """Test case for create_field_data_from_analyzed_file + Take the analyzed results of the field data, modify it to your liking, then save it on the server. """ pass - def test_create_new_field_data_from_simulation(self) -> None: - """Test case for create_new_field_data_from_simulation + def test_delete_field_data(self) -> None: + """Test case for delete_field_data - Create new field data from a simulation. + Delete the selected field data. """ pass - def test_delete_field_data(self) -> None: - """Test case for delete_field_data + def test_get_all_field_data_ids(self) -> None: + """Test case for get_all_field_data_ids - Delete the selected field data. + Get all of the ids used to identify, and retrieve field data. """ pass - def test_get_all_field_data(self) -> None: - """Test case for get_all_field_data + def test_get_field_data_shape_from_id(self) -> None: + """Test case for get_field_data_shape_from_id - Get all of the field data for that user. + Get the shape of the field data. That is it's size, origin, extent, and data identifiers. """ pass diff --git a/python-restclient/test/test_group_access.py b/python-restclient/test/test_group_access.py deleted file mode 100644 index 164ba10d93..0000000000 --- a/python-restclient/test/test_group_access.py +++ /dev/null @@ -1,54 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.group_access import GroupAccess - -class TestGroupAccess(unittest.TestCase): - """GroupAccess unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> GroupAccess: - """Test GroupAccess - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `GroupAccess` - """ - model = GroupAccess() - if include_optional: - return GroupAccess( - groupid = 1.337, - description = '' - ) - else: - return GroupAccess( - ) - """ - - def testGroupAccess(self): - """Test GroupAccess""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_hello_world_api.py b/python-restclient/test/test_hello_world_api.py index 0392ac752e..d1ce89f48f 100644 --- a/python-restclient/test/test_hello_world_api.py +++ b/python-restclient/test/test_hello_world_api.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (test) + VCell API VCell API diff --git a/python-restclient/test/test_hello_world_message.py b/python-restclient/test/test_hello_world_message.py index 6dcfd79b5e..7bb6da06ae 100644 --- a/python-restclient/test/test_hello_world_message.py +++ b/python-restclient/test/test_hello_world_message.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (test) + VCell API VCell API diff --git a/python-restclient/test/test_i_size.py b/python-restclient/test/test_i_size.py index c280acad52..58fc58840f 100644 --- a/python-restclient/test/test_i_size.py +++ b/python-restclient/test/test_i_size.py @@ -39,8 +39,7 @@ def make_instance(self, include_optional) -> ISize: return ISize( x = 56, y = 56, - z = 56, - x_yz = 56 + z = 56 ) else: return ISize( diff --git a/python-restclient/test/test_identity_provider.py b/python-restclient/test/test_identity_provider.py deleted file mode 100644 index c7ebb2e59c..0000000000 --- a/python-restclient/test/test_identity_provider.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.identity_provider import IdentityProvider - -class TestIdentityProvider(unittest.TestCase): - """IdentityProvider unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def testIdentityProvider(self): - """Test IdentityProvider""" - # inst = IdentityProvider() - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_map_user.py b/python-restclient/test/test_map_user.py deleted file mode 100644 index 61a79fb348..0000000000 --- a/python-restclient/test/test_map_user.py +++ /dev/null @@ -1,54 +0,0 @@ -# coding: utf-8 - -""" - VCell API (development) - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.map_user import MapUser - -class TestMapUser(unittest.TestCase): - """MapUser unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> MapUser: - """Test MapUser - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `MapUser` - """ - model = MapUser() - if include_optional: - return MapUser( - user_id = '', - password = '' - ) - else: - return MapUser( - ) - """ - - def testMapUser(self): - """Test MapUser""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_mathmodel_ref.py b/python-restclient/test/test_mathmodel_ref.py index be7d704a15..4234b69e78 100644 --- a/python-restclient/test/test_mathmodel_ref.py +++ b/python-restclient/test/test_mathmodel_ref.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API diff --git a/python-restclient/test/test_override_representation.py b/python-restclient/test/test_override_representation.py deleted file mode 100644 index 658bb49e34..0000000000 --- a/python-restclient/test/test_override_representation.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.override_representation import OverrideRepresentation - -class TestOverrideRepresentation(unittest.TestCase): - """OverrideRepresentation unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> OverrideRepresentation: - """Test OverrideRepresentation - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `OverrideRepresentation` - """ - model = OverrideRepresentation() - if include_optional: - return OverrideRepresentation( - name = '', - type = '', - expression = '', - values = [ - '' - ], - cardinality = 56 - ) - else: - return OverrideRepresentation( - ) - """ - - def testOverrideRepresentation(self): - """Test OverrideRepresentation""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_publication.py b/python-restclient/test/test_publication.py index 540df5e5c9..ea68d991ac 100644 --- a/python-restclient/test/test_publication.py +++ b/python-restclient/test/test_publication.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API diff --git a/python-restclient/test/test_publication_resource_api.py b/python-restclient/test/test_publication_resource_api.py index cf6bef21d3..1cb44ec008 100644 --- a/python-restclient/test/test_publication_resource_api.py +++ b/python-restclient/test/test_publication_resource_api.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API @@ -27,21 +27,38 @@ def setUp(self) -> None: def tearDown(self) -> None: pass - def test_api_publications_delete(self) -> None: - """Test case for api_publications_delete + def test_create_publication(self) -> None: + """Test case for create_publication + + Create publication + """ + pass + + def test_delete_publication(self) -> None: + """Test case for delete_publication + + Delete publication + """ + pass + + def test_get_publication_by_id(self) -> None: + """Test case for get_publication_by_id + Get publication by ID """ pass - def test_api_publications_get(self) -> None: - """Test case for api_publications_get + def test_get_publications(self) -> None: + """Test case for get_publications + Get all publications """ pass - def test_api_publications_post(self) -> None: - """Test case for api_publications_post + def test_update_publication(self) -> None: + """Test case for update_publication + Create publication """ pass diff --git a/python-restclient/test/test_save_field_data_from_file.py b/python-restclient/test/test_save_field_data_from_file.py deleted file mode 100644 index c6e752dc36..0000000000 --- a/python-restclient/test/test_save_field_data_from_file.py +++ /dev/null @@ -1,106 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.save_field_data_from_file import SaveFieldDataFromFile - -class TestSaveFieldDataFromFile(unittest.TestCase): - """SaveFieldDataFromFile unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> SaveFieldDataFromFile: - """Test SaveFieldDataFromFile - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `SaveFieldDataFromFile` - """ - model = SaveFieldDataFromFile() - if include_optional: - return SaveFieldDataFromFile( - short_spec_data = [ - [ - [ - 56 - ] - ] - ], - spec_edi = vcell_client.models.external_data_identifier.ExternalDataIdentifier( - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - name = '', - i_d = '', - job_index = 56, - simulation_key = , - parameter_scan_type = True, - data_key = , ), - var_names = [ - '' - ], - variable_types = [ - vcell_client.models.variable_type.VariableType( - type = 56, - variable_domain = 'VARIABLEDOMAIN_POSTPROCESSING', - name = '', - units = '', - label = '', - legacy_warn = True, - default_label = '', - default_units = '', - type_name = '', ) - ], - times = [ - 1.337 - ], - origin = vcell_client.models.origin.Origin( - x = 1.337, - y = 1.337, - z = 1.337, ), - extent = vcell_client.models.extent.Extent( - x = 1.337, - y = 1.337, - z = 1.337, ), - isize = vcell_client.models.i_size.ISize( - x = 56, - y = 56, - z = 56, - x_yz = 56, ), - annotation = '' - ) - else: - return SaveFieldDataFromFile( - ) - """ - - def testSaveFieldDataFromFile(self): - """Test SaveFieldDataFromFile""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_simulation.py b/python-restclient/test/test_simulation.py deleted file mode 100644 index 38c11e8030..0000000000 --- a/python-restclient/test/test_simulation.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.simulation import Simulation - -class TestSimulation(unittest.TestCase): - """Simulation unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> Simulation: - """Test Simulation - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `Simulation` - """ - model = Simulation() - if include_optional: - return Simulation( - name = '' - ) - else: - return Simulation( - ) - """ - - def testSimulation(self): - """Test Simulation""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_simulation_execution_status.py b/python-restclient/test/test_simulation_execution_status.py deleted file mode 100644 index 22b72b774d..0000000000 --- a/python-restclient/test/test_simulation_execution_status.py +++ /dev/null @@ -1,69 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.simulation_execution_status import SimulationExecutionStatus - -class TestSimulationExecutionStatus(unittest.TestCase): - """SimulationExecutionStatus unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> SimulationExecutionStatus: - """Test SimulationExecutionStatus - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `SimulationExecutionStatus` - """ - model = SimulationExecutionStatus() - if include_optional: - return SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_compute_host = '', - field_has_data = True, - field_htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ) - ) - else: - return SimulationExecutionStatus( - ) - """ - - def testSimulationExecutionStatus(self): - """Test SimulationExecutionStatus""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_simulation_job_status.py b/python-restclient/test/test_simulation_job_status.py deleted file mode 100644 index 052963b8ff..0000000000 --- a/python-restclient/test/test_simulation_job_status.py +++ /dev/null @@ -1,155 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.simulation_job_status import SimulationJobStatus - -class TestSimulationJobStatus(unittest.TestCase): - """SimulationJobStatus unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> SimulationJobStatus: - """Test SimulationJobStatus - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `SimulationJobStatus` - """ - model = SimulationJobStatus() - if include_optional: - return SimulationJobStatus( - field_time_date_stamp = 'Thu Mar 10 00:00:00 UTC 2022', - field_vc_sim_id = vcell_client.models.vc_simulation_identifier.VCSimulationIdentifier( - simulation_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = , - name = '', - test_account = True, ), - i_d = '', ), - field_submit_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_scheduler_status = 'WAITING', - field_task_id = 56, - field_simulation_message = vcell_client.models.simulation_message.SimulationMessage( - detailed_state = 'UNKNOWN', - message = '', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ), - display_message = '', ), - field_server_id = vcell_client.models.v_cell_server_id.VCellServerID( - server_id = '', ), - field_job_index = 56, - field_simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status.SimulationQueueEntryStatus( - field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_queue_id = 'QUEUE_ID_WAITING', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_id = 'QUEUE_ID_WAITING', - queue_priority = 56, ), - field_simulation_execution_status = vcell_client.models.simulation_execution_status.SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_compute_host = '', - field_has_data = True, - field_htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', ), ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - job_index = 56, - scheduler_status = 'WAITING', - server_id = vcell_client.models.v_cell_server_id.VCellServerID( - server_id = '', ), - simulation_execution_status = vcell_client.models.simulation_execution_status.SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_compute_host = '', - field_has_data = True, - field_htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', ), ), - simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status.SimulationQueueEntryStatus( - field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_queue_id = 'QUEUE_ID_WAITING', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_id = 'QUEUE_ID_WAITING', - queue_priority = 56, ), - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - simulation_message = vcell_client.models.simulation_message.SimulationMessage( - detailed_state = 'UNKNOWN', - message = '', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', - batch_system_type = 'PBS', ), - display_message = '', ), - submit_date = 'Thu Mar 10 00:00:00 UTC 2022', - task_id = 56, - time_date_stamp = 'Thu Mar 10 00:00:00 UTC 2022', - v_c_simulation_identifier = vcell_client.models.vc_simulation_identifier.VCSimulationIdentifier( - simulation_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = , - name = '', - test_account = True, ), - i_d = '', ) - ) - else: - return SimulationJobStatus( - ) - """ - - def testSimulationJobStatus(self): - """Test SimulationJobStatus""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_simulation_job_status_record.py b/python-restclient/test/test_simulation_job_status_record.py index 0a638b01f7..b1d727596e 100644 --- a/python-restclient/test/test_simulation_job_status_record.py +++ b/python-restclient/test/test_simulation_job_status_record.py @@ -37,7 +37,7 @@ def make_instance(self, include_optional) -> SimulationJobStatusRecord: model = SimulationJobStatusRecord() if include_optional: return SimulationJobStatusRecord( - field_time_data_stamp = 'Thu Mar 10 00:00:00 UTC 2022', + field_time_data_stamp = '2022-03-10T16:15:50Z', field_vc_sim_id = vcell_client.models.vc_simulation_identifier.VCSimulationIdentifier( simulation_key = vcell_client.models.key_value.KeyValue( value = 1.337, ), @@ -45,11 +45,10 @@ def make_instance(self, include_optional) -> SimulationJobStatusRecord: user_name = '', key = vcell_client.models.key_value.KeyValue( value = 1.337, ), - i_d = , name = '', test_account = True, ), i_d = '', ), - field_submit_date = 'Thu Mar 10 00:00:00 UTC 2022', + field_submit_date = '2022-03-10T16:15:50Z', field_scheduler_status = 'WAITING', field_simulation_message = vcell_client.models.simulation_message.SimulationMessage( detailed_state = 'UNKNOWN', @@ -62,30 +61,20 @@ def make_instance(self, include_optional) -> SimulationJobStatusRecord: field_task_id = 56, field_server_id = '', field_job_index = 56, - field_simulation_execution_status = vcell_client.models.simulation_execution_status.SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', + field_simulation_execution_status = vcell_client.models.simulation_execution_status_record.SimulationExecutionStatusRecord( + field_start_date = '2022-03-10T16:15:50Z', + field_latest_update_date = '2022-03-10T16:15:50Z', + field_end_date = '2022-03-10T16:15:50Z', field_compute_host = '', field_has_data = True, field_htc_job_id = vcell_client.models.htc_job_id.HtcJobID( job_number = 56, server = '', - batch_system_type = 'PBS', ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - htc_job_id = vcell_client.models.htc_job_id.HtcJobID( - job_number = 56, - server = '', ), ), - field_simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status.SimulationQueueEntryStatus( + batch_system_type = 'PBS', ), ), + field_simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status_record.SimulationQueueEntryStatusRecord( field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_queue_id = 'QUEUE_ID_WAITING', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_id = 'QUEUE_ID_WAITING', - queue_priority = 56, ) + field_queue_date = '2022-03-10T16:15:50Z', + field_queue_id = 'QUEUE_ID_WAITING', ) ) else: return SimulationJobStatusRecord( diff --git a/python-restclient/test/test_simulation_queue_entry_status.py b/python-restclient/test/test_simulation_queue_entry_status.py deleted file mode 100644 index 81f36c8d92..0000000000 --- a/python-restclient/test/test_simulation_queue_entry_status.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.simulation_queue_entry_status import SimulationQueueEntryStatus - -class TestSimulationQueueEntryStatus(unittest.TestCase): - """SimulationQueueEntryStatus unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> SimulationQueueEntryStatus: - """Test SimulationQueueEntryStatus - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `SimulationQueueEntryStatus` - """ - model = SimulationQueueEntryStatus() - if include_optional: - return SimulationQueueEntryStatus( - field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_queue_id = 'QUEUE_ID_WAITING', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_id = 'QUEUE_ID_WAITING', - queue_priority = 56 - ) - else: - return SimulationQueueEntryStatus( - ) - """ - - def testSimulationQueueEntryStatus(self): - """Test SimulationQueueEntryStatus""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_simulation_resource_api.py b/python-restclient/test/test_simulation_resource_api.py index aa62ff7aaa..cdbb07462e 100644 --- a/python-restclient/test/test_simulation_resource_api.py +++ b/python-restclient/test/test_simulation_resource_api.py @@ -27,10 +27,10 @@ def setUp(self) -> None: def tearDown(self) -> None: pass - def test_save_simulation(self) -> None: - """Test case for save_simulation + def test_get_simulation_status(self) -> None: + """Test case for get_simulation_status - Save a simulation. + Get the status of simulation running """ pass diff --git a/python-restclient/test/test_simulation_status_persistent_record.py b/python-restclient/test/test_simulation_status_persistent_record.py index 2fe9f6005d..6fe3582d8e 100644 --- a/python-restclient/test/test_simulation_status_persistent_record.py +++ b/python-restclient/test/test_simulation_status_persistent_record.py @@ -38,9 +38,6 @@ def make_instance(self, include_optional) -> SimulationStatusPersistentRecord: if include_optional: return SimulationStatusPersistentRecord( status = 'UNKNOWN', - progress_hash = { - 'key' : 1.337 - }, details = '', has_data = True ) diff --git a/python-restclient/test/test_status_message.py b/python-restclient/test/test_status_message.py index 4d6264786d..48f6fa991a 100644 --- a/python-restclient/test/test_status_message.py +++ b/python-restclient/test/test_status_message.py @@ -37,8 +37,8 @@ def make_instance(self, include_optional) -> StatusMessage: model = StatusMessage() if include_optional: return StatusMessage( - job_status = vcell_client.models.simulation_job_status.SimulationJobStatus( - field_time_date_stamp = 'Thu Mar 10 00:00:00 UTC 2022', + job_status = vcell_client.models.simulation_job_status_record.SimulationJobStatusRecord( + field_time_data_stamp = '2022-03-10T16:15:50Z', field_vc_sim_id = vcell_client.models.vc_simulation_identifier.VCSimulationIdentifier( simulation_key = vcell_client.models.key_value.KeyValue( value = 1.337, ), @@ -46,13 +46,11 @@ def make_instance(self, include_optional) -> StatusMessage: user_name = '', key = vcell_client.models.key_value.KeyValue( value = 1.337, ), - i_d = , name = '', test_account = True, ), i_d = '', ), - field_submit_date = 'Thu Mar 10 00:00:00 UTC 2022', + field_submit_date = '2022-03-10T16:15:50Z', field_scheduler_status = 'WAITING', - field_task_id = 56, field_simulation_message = vcell_client.models.simulation_message.SimulationMessage( detailed_state = 'UNKNOWN', message = '', @@ -61,58 +59,22 @@ def make_instance(self, include_optional) -> StatusMessage: server = '', batch_system_type = 'PBS', ), display_message = '', ), - field_server_id = vcell_client.models.v_cell_server_id.VCellServerID( - server_id = '', ), + field_task_id = 56, + field_server_id = '', field_job_index = 56, - field_simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status.SimulationQueueEntryStatus( - field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_queue_id = 'QUEUE_ID_WAITING', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_id = 'QUEUE_ID_WAITING', - queue_priority = 56, ), - field_simulation_execution_status = vcell_client.models.simulation_execution_status.SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', + field_simulation_execution_status = vcell_client.models.simulation_execution_status_record.SimulationExecutionStatusRecord( + field_start_date = '2022-03-10T16:15:50Z', + field_latest_update_date = '2022-03-10T16:15:50Z', + field_end_date = '2022-03-10T16:15:50Z', field_compute_host = '', field_has_data = True, field_htc_job_id = vcell_client.models.htc_job_id.HtcJobID( job_number = 56, - server = '', ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - htc_job_id = , ), - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - job_index = 56, - scheduler_status = 'WAITING', - server_id = vcell_client.models.v_cell_server_id.VCellServerID(), - simulation_execution_status = vcell_client.models.simulation_execution_status.SimulationExecutionStatus( - field_start_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_end_date = 'Thu Mar 10 00:00:00 UTC 2022', - field_compute_host = '', - field_has_data = True, - compute_host = '', - end_date = 'Thu Mar 10 00:00:00 UTC 2022', - latest_update_date = 'Thu Mar 10 00:00:00 UTC 2022', - start_date = 'Thu Mar 10 00:00:00 UTC 2022', ), - simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status.SimulationQueueEntryStatus( + server = '', ), ), + field_simulation_queue_entry_status = vcell_client.models.simulation_queue_entry_status_record.SimulationQueueEntryStatusRecord( field_queue_priority = 56, - field_queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_date = 'Thu Mar 10 00:00:00 UTC 2022', - queue_priority = 56, ), - start_date = 'Thu Mar 10 00:00:00 UTC 2022', - simulation_message = vcell_client.models.simulation_message.SimulationMessage( - message = '', - display_message = '', ), - submit_date = 'Thu Mar 10 00:00:00 UTC 2022', - task_id = 56, - time_date_stamp = 'Thu Mar 10 00:00:00 UTC 2022', - v_c_simulation_identifier = vcell_client.models.vc_simulation_identifier.VCSimulationIdentifier(), ), + field_queue_date = '2022-03-10T16:15:50Z', + field_queue_id = 'QUEUE_ID_WAITING', ), ), user_name = '', progress = 1.337, timepoint = 1.337 diff --git a/python-restclient/test/test_ucd_info.py b/python-restclient/test/test_ucd_info.py deleted file mode 100644 index b90f1f0253..0000000000 --- a/python-restclient/test/test_ucd_info.py +++ /dev/null @@ -1,95 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.ucd_info import UCDInfo - -class TestUCDInfo(unittest.TestCase): - """UCDInfo unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> UCDInfo: - """Test UCDInfo - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `UCDInfo` - """ - model = UCDInfo() - if include_optional: - return UCDInfo( - ucd_grid_nodes = [ - [ - [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ] - ] - ], - ucd_membrane_quads = [ - [ - 56 - ] - ], - reduced_ucd_grid_nodes_v = [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ], - u_cd_grid_nodes = [ - [ - [ - vcell_client.models.coordinate.Coordinate( - x = 1.337, - y = 1.337, - z = 1.337, ) - ] - ] - ], - u_cd_membrane_quads = [ - [ - 56 - ] - ], - num_volume_nodes_x = 56, - num_volume_nodes_y = 56, - num_volume_nodes_z = 56, - num_points_xyz = 56, - num_volume_nodes_xy = 56, - num_volume_cells = 56, - num_membrane_cells = 56 - ) - else: - return UCDInfo( - ) - """ - - def testUCDInfo(self): - """Test UCDInfo""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_user.py b/python-restclient/test/test_user.py index c6eda582ed..1dada307ad 100644 --- a/python-restclient/test/test_user.py +++ b/python-restclient/test/test_user.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API @@ -37,7 +37,11 @@ def make_instance(self, include_optional) -> User: model = User() if include_optional: return User( - user_name = '' + user_name = '', + key = vcell_client.models.key_value.KeyValue( + value = 1.337, ), + name = '', + test_account = True ) else: return User( diff --git a/python-restclient/test/test_user1.py b/python-restclient/test/test_user1.py deleted file mode 100644 index 5c83f48788..0000000000 --- a/python-restclient/test/test_user1.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.user1 import User1 - -class TestUser1(unittest.TestCase): - """User1 unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> User1: - """Test User1 - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `User1` - """ - model = User1() - if include_optional: - return User1( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - publisher = True, - test_account = True - ) - else: - return User1( - ) - """ - - def testUser1(self): - """Test User1""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_user_identity.py b/python-restclient/test/test_user_identity.py deleted file mode 100644 index a535d3343b..0000000000 --- a/python-restclient/test/test_user_identity.py +++ /dev/null @@ -1,65 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.user_identity import UserIdentity - -class TestUserIdentity(unittest.TestCase): - """UserIdentity unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> UserIdentity: - """Test UserIdentity - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `UserIdentity` - """ - model = UserIdentity() - if include_optional: - return UserIdentity( - id = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - user = vcell_client.models.user1.User1( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - publisher = True, - test_account = True, ), - subject = '', - insert_date = 'Thu Mar 10 00:00:00 UTC 2022' - ) - else: - return UserIdentity( - ) - """ - - def testUserIdentity(self): - """Test UserIdentity""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_user_identity_json_safe.py b/python-restclient/test/test_user_identity_json_safe.py index 7b29c333d3..954a230afa 100644 --- a/python-restclient/test/test_user_identity_json_safe.py +++ b/python-restclient/test/test_user_identity_json_safe.py @@ -37,6 +37,7 @@ def make_instance(self, include_optional) -> UserIdentityJSONSafe: model = UserIdentityJSONSafe() if include_optional: return UserIdentityJSONSafe( + mapped = True, user_name = '', id = 1.337, subject = '', diff --git a/python-restclient/test/test_user_login_info_for_mapping.py b/python-restclient/test/test_user_login_info_for_mapping.py index 7f1d797470..0c41d647d6 100644 --- a/python-restclient/test/test_user_login_info_for_mapping.py +++ b/python-restclient/test/test_user_login_info_for_mapping.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API @@ -38,7 +38,7 @@ def make_instance(self, include_optional) -> UserLoginInfoForMapping: if include_optional: return UserLoginInfoForMapping( user_id = '', - digested_password = '' + password = '' ) else: return UserLoginInfoForMapping( diff --git a/python-restclient/test/test_users_resource_api.py b/python-restclient/test/test_users_resource_api.py index 6476fa4b56..4d0831fada 100644 --- a/python-restclient/test/test_users_resource_api.py +++ b/python-restclient/test/test_users_resource_api.py @@ -1,7 +1,7 @@ # coding: utf-8 """ - VCell API (development) + VCell API VCell API @@ -27,9 +27,73 @@ def setUp(self) -> None: def tearDown(self) -> None: pass - def test_api_users_me_get(self) -> None: - """Test case for api_users_me_get + def test_forgot_legacy_password(self) -> None: + """Test case for forgot_legacy_password + + The end user has forgotten the legacy password they used for VCell, so they will be emailed it. + """ + pass + + def test_get_guest_legacy_api_token(self) -> None: + """Test case for get_guest_legacy_api_token + + Method to get legacy tokens for guest users + """ + pass + + def test_get_legacy_api_token(self) -> None: + """Test case for get_legacy_api_token + + Get token for legacy API + """ + pass + + def test_get_mapped_user(self) -> None: + """Test case for get_mapped_user + + Get mapped VCell identity + """ + pass + + def test_get_me(self) -> None: + """Test case for get_me + + Get current user + """ + pass + + def test_map_new_user(self) -> None: + """Test case for map_new_user + + create vcell user + """ + pass + + def test_map_user(self) -> None: + """Test case for map_user + + map vcell user + """ + pass + + def test_process_magic_link(self) -> None: + """Test case for process_magic_link + + Process the magic link and map the user + """ + pass + + def test_request_recovery_email(self) -> None: + """Test case for request_recovery_email + + request a recovery email to link a VCell account. + """ + pass + + def test_unmap_user(self) -> None: + """Test case for unmap_user + remove vcell identity mapping """ pass diff --git a/python-restclient/test/test_v_cell_server_id.py b/python-restclient/test/test_v_cell_server_id.py deleted file mode 100644 index e0bea7b3dc..0000000000 --- a/python-restclient/test/test_v_cell_server_id.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.v_cell_server_id import VCellServerID - -class TestVCellServerID(unittest.TestCase): - """VCellServerID unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> VCellServerID: - """Test VCellServerID - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `VCellServerID` - """ - model = VCellServerID() - if include_optional: - return VCellServerID( - server_id = '' - ) - else: - return VCellServerID( - ) - """ - - def testVCellServerID(self): - """Test VCellServerID""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_vc_simulation_identifier.py b/python-restclient/test/test_vc_simulation_identifier.py index e7e6f7900a..095ebdc859 100644 --- a/python-restclient/test/test_vc_simulation_identifier.py +++ b/python-restclient/test/test_vc_simulation_identifier.py @@ -43,8 +43,6 @@ def make_instance(self, include_optional) -> VCSimulationIdentifier: user_name = '', key = vcell_client.models.key_value.KeyValue( value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), name = '', test_account = True, ), i_d = '' diff --git a/python-restclient/test/test_version.py b/python-restclient/test/test_version.py deleted file mode 100644 index 8a8ce72015..0000000000 --- a/python-restclient/test/test_version.py +++ /dev/null @@ -1,99 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.version import Version - -class TestVersion(unittest.TestCase): - """Version unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> Version: - """Test Version - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `Version` - """ - model = Version() - if include_optional: - return Version( - version_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - version_name = '', - version_owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ), - version_group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - version_branch_point_ref = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - version_branch_id = 1.337, - version_date = 'Thu Mar 10 00:00:00 UTC 2022', - version_flag = vcell_client.models.version_flag.VersionFlag( - int_value = 56, - archived = True, - current = True, - published = True, ), - version_annot = '', - annot = '', - branch_id = 1.337, - branch_point_ref_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - var_date = 'Thu Mar 10 00:00:00 UTC 2022', - flag = vcell_client.models.version_flag.VersionFlag( - version_flag = 56, - int_value = 56, - archived = True, - current = True, - published = True, ), - group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - name = '', - owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - name = '', - test_account = True, ) - ) - else: - return Version( - ) - """ - - def testVersion(self): - """Test Version""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_version_flag.py b/python-restclient/test/test_version_flag.py deleted file mode 100644 index e35efa4a9c..0000000000 --- a/python-restclient/test/test_version_flag.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.version_flag import VersionFlag - -class TestVersionFlag(unittest.TestCase): - """VersionFlag unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> VersionFlag: - """Test VersionFlag - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `VersionFlag` - """ - model = VersionFlag() - if include_optional: - return VersionFlag( - version_flag = 56, - int_value = 56, - archived = True, - current = True, - published = True - ) - else: - return VersionFlag( - ) - """ - - def testVersionFlag(self): - """Test VersionFlag""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_versionable_type.py b/python-restclient/test/test_versionable_type.py deleted file mode 100644 index 3ae22afa60..0000000000 --- a/python-restclient/test/test_versionable_type.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.versionable_type import VersionableType - -class TestVersionableType(unittest.TestCase): - """VersionableType unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> VersionableType: - """Test VersionableType - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `VersionableType` - """ - model = VersionableType() - if include_optional: - return VersionableType( - v_type = 56, - name = '', - v_class = vcell_client.models.v_class.vClass(), - b_top_level = True, - code = 56, - is_top_level = True, - type_name = '', - version_class = vcell_client.models.version_class.versionClass() - ) - else: - return VersionableType( - ) - """ - - def testVersionableType(self): - """Test VersionableType""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/test/test_versionable_type_version.py b/python-restclient/test/test_versionable_type_version.py deleted file mode 100644 index a2add5cef5..0000000000 --- a/python-restclient/test/test_versionable_type_version.py +++ /dev/null @@ -1,100 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest -import datetime - -from vcell_client.models.versionable_type_version import VersionableTypeVersion - -class TestVersionableTypeVersion(unittest.TestCase): - """VersionableTypeVersion unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> VersionableTypeVersion: - """Test VersionableTypeVersion - include_option is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `VersionableTypeVersion` - """ - model = VersionableTypeVersion() - if include_optional: - return VersionableTypeVersion( - v_type = vcell_client.models.versionable_type.VersionableType( - name = '', - v_class = vcell_client.models.v_class.vClass(), - b_top_level = True, - code = 56, - is_top_level = True, - type_name = '', - version_class = vcell_client.models.version_class.versionClass(), ), - version = vcell_client.models.version.Version( - version_key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - version_name = '', - version_owner = vcell_client.models.user.User( - user_name = '', - key = vcell_client.models.key_value.KeyValue( - value = 1.337, ), - i_d = , - name = '', - test_account = True, ), - version_group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - version_branch_point_ref = , - version_branch_id = 1.337, - version_date = 'Thu Mar 10 00:00:00 UTC 2022', - version_flag = vcell_client.models.version_flag.VersionFlag( - int_value = 56, - archived = True, - current = True, - published = True, ), - version_annot = '', - annot = '', - branch_id = 1.337, - branch_point_ref_key = , - date = 'Thu Mar 10 00:00:00 UTC 2022', - flag = vcell_client.models.version_flag.VersionFlag( - int_value = 56, - archived = True, - current = True, - published = True, ), - group_access = vcell_client.models.group_access.GroupAccess( - groupid = 1.337, - description = '', ), - name = '', - owner = vcell_client.models.user.User( - user_name = '', - name = '', - test_account = True, ), ) - ) - else: - return VersionableTypeVersion( - ) - """ - - def testVersionableTypeVersion(self): - """Test VersionableTypeVersion""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/python-restclient/vcell_client/models/access_token_representation.py b/python-restclient/vcell_client/models/access_token_representation.py deleted file mode 100644 index 4a5556fc5f..0000000000 --- a/python-restclient/vcell_client/models/access_token_representation.py +++ /dev/null @@ -1,102 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictInt, StrictStr -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class AccessTokenRepresentation(BaseModel): - """ - AccessTokenRepresentation - """ # noqa: E501 - token: Optional[StrictStr] = None - creation_date_seconds: Optional[StrictInt] = Field(default=None, alias="creationDateSeconds") - expire_date_seconds: Optional[StrictInt] = Field(default=None, alias="expireDateSeconds") - user_id: Optional[StrictStr] = Field(default=None, alias="userId") - user_key: Optional[StrictStr] = Field(default=None, alias="userKey") - __properties: ClassVar[List[str]] = ["token", "creationDateSeconds", "expireDateSeconds", "userId", "userKey"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of AccessTokenRepresentation from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of AccessTokenRepresentation from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in AccessTokenRepresentation) in the input: " + _key) - - _obj = cls.model_validate({ - "token": obj.get("token"), - "creationDateSeconds": obj.get("creationDateSeconds"), - "expireDateSeconds": obj.get("expireDateSeconds"), - "userId": obj.get("userId"), - "userKey": obj.get("userKey") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/cartesian_mesh.py b/python-restclient/vcell_client/models/cartesian_mesh.py deleted file mode 100644 index 95a66356b0..0000000000 --- a/python-restclient/vcell_client/models/cartesian_mesh.py +++ /dev/null @@ -1,132 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictBool, StrictBytes, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.i_size import ISize -from vcell_client.models.ucd_info import UCDInfo -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class CartesianMesh(BaseModel): - """ - CartesianMesh - """ # noqa: E501 - compressed_bytes: Optional[Union[StrictBytes, StrictStr]] = Field(default=None, alias="compressedBytes") - u_cd_info: Optional[UCDInfo] = Field(default=None, alias="uCDInfo") - geometry_dimension: Optional[StrictInt] = Field(default=None, alias="geometryDimension") - volume_region_map_subvolume: Optional[Dict[str, StrictInt]] = Field(default=None, alias="volumeRegionMapSubvolume") - membrane_region_map_subvolumes_in_out: Optional[Dict[str, Any]] = Field(default=None, alias="membraneRegionMapSubvolumesInOut") - num_membrane_elements: Optional[StrictInt] = Field(default=None, alias="numMembraneElements") - num_membrane_regions: Optional[StrictInt] = Field(default=None, alias="numMembraneRegions") - num_volume_elements: Optional[StrictInt] = Field(default=None, alias="numVolumeElements") - num_volume_regions: Optional[StrictInt] = Field(default=None, alias="numVolumeRegions") - i_size: Optional[ISize] = Field(default=None, alias="iSize") - size_x: Optional[StrictInt] = Field(default=None, alias="sizeX") - size_y: Optional[StrictInt] = Field(default=None, alias="sizeY") - size_z: Optional[StrictInt] = Field(default=None, alias="sizeZ") - membrane_connectivity_ok: Optional[StrictBool] = Field(default=None, alias="membraneConnectivityOK") - output_fields: Optional[List[Any]] = Field(default=None, alias="outputFields") - chombo_mesh: Optional[StrictBool] = Field(default=None, alias="chomboMesh") - __properties: ClassVar[List[str]] = ["compressedBytes", "uCDInfo", "geometryDimension", "volumeRegionMapSubvolume", "membraneRegionMapSubvolumesInOut", "numMembraneElements", "numMembraneRegions", "numVolumeElements", "numVolumeRegions", "iSize", "sizeX", "sizeY", "sizeZ", "membraneConnectivityOK", "outputFields", "chomboMesh"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of CartesianMesh from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of u_cd_info - if self.u_cd_info: - _dict['uCDInfo'] = self.u_cd_info.to_dict() - # override the default output from pydantic by calling `to_dict()` of i_size - if self.i_size: - _dict['iSize'] = self.i_size.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of CartesianMesh from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in CartesianMesh) in the input: " + _key) - - _obj = cls.model_validate({ - "compressedBytes": obj.get("compressedBytes"), - "uCDInfo": UCDInfo.from_dict(obj.get("uCDInfo")) if obj.get("uCDInfo") is not None else None, - "geometryDimension": obj.get("geometryDimension"), - "volumeRegionMapSubvolume": obj.get("volumeRegionMapSubvolume"), - "membraneRegionMapSubvolumesInOut": obj.get("membraneRegionMapSubvolumesInOut"), - "numMembraneElements": obj.get("numMembraneElements"), - "numMembraneRegions": obj.get("numMembraneRegions"), - "numVolumeElements": obj.get("numVolumeElements"), - "numVolumeRegions": obj.get("numVolumeRegions"), - "iSize": ISize.from_dict(obj.get("iSize")) if obj.get("iSize") is not None else None, - "sizeX": obj.get("sizeX"), - "sizeY": obj.get("sizeY"), - "sizeZ": obj.get("sizeZ"), - "membraneConnectivityOK": obj.get("membraneConnectivityOK"), - "outputFields": obj.get("outputFields"), - "chomboMesh": obj.get("chomboMesh") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/coordinate.py b/python-restclient/vcell_client/models/coordinate.py deleted file mode 100644 index d621ca545c..0000000000 --- a/python-restclient/vcell_client/models/coordinate.py +++ /dev/null @@ -1,97 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class Coordinate(BaseModel): - """ - Coordinate - """ # noqa: E501 - x: Optional[Union[StrictFloat, StrictInt]] = None - y: Optional[Union[StrictFloat, StrictInt]] = None - z: Optional[Union[StrictFloat, StrictInt]] = None - __properties: ClassVar[List[str]] = ["x", "y", "z"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of Coordinate from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of Coordinate from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in Coordinate) in the input: " + _key) - - _obj = cls.model_validate({ - "x": obj.get("x"), - "y": obj.get("y"), - "z": obj.get("z") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_db_operation_spec.py b/python-restclient/vcell_client/models/field_data_db_operation_spec.py deleted file mode 100644 index 28bd4e6a1a..0000000000 --- a/python-restclient/vcell_client/models/field_data_db_operation_spec.py +++ /dev/null @@ -1,120 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictBool, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.user import User -from vcell_client.models.versionable_type_version import VersionableTypeVersion -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataDBOperationSpec(BaseModel): - """ - FieldDataDBOperationSpec - """ # noqa: E501 - op_type: Optional[StrictInt] = Field(default=None, alias="opType") - spec_edi: Optional[ExternalDataIdentifier] = Field(default=None, alias="specEDI") - owner: Optional[User] = None - new_ext_data_id_name: Optional[StrictStr] = Field(default=None, alias="newExtDataIDName") - annotation: Optional[StrictStr] = None - source_names: Optional[List[StrictStr]] = Field(default=None, alias="sourceNames") - source_owner: Optional[VersionableTypeVersion] = Field(default=None, alias="sourceOwner") - b_include_sim_refs: Optional[StrictBool] = Field(default=None, alias="bIncludeSimRefs") - __properties: ClassVar[List[str]] = ["opType", "specEDI", "owner", "newExtDataIDName", "annotation", "sourceNames", "sourceOwner", "bIncludeSimRefs"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataDBOperationSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of spec_edi - if self.spec_edi: - _dict['specEDI'] = self.spec_edi.to_dict() - # override the default output from pydantic by calling `to_dict()` of owner - if self.owner: - _dict['owner'] = self.owner.to_dict() - # override the default output from pydantic by calling `to_dict()` of source_owner - if self.source_owner: - _dict['sourceOwner'] = self.source_owner.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataDBOperationSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataDBOperationSpec) in the input: " + _key) - - _obj = cls.model_validate({ - "opType": obj.get("opType"), - "specEDI": ExternalDataIdentifier.from_dict(obj.get("specEDI")) if obj.get("specEDI") is not None else None, - "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, - "newExtDataIDName": obj.get("newExtDataIDName"), - "annotation": obj.get("annotation"), - "sourceNames": obj.get("sourceNames"), - "sourceOwner": VersionableTypeVersion.from_dict(obj.get("sourceOwner")) if obj.get("sourceOwner") is not None else None, - "bIncludeSimRefs": obj.get("bIncludeSimRefs") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_external_data_ids.py b/python-restclient/vcell_client/models/field_data_external_data_ids.py deleted file mode 100644 index aca7a3df98..0000000000 --- a/python-restclient/vcell_client/models/field_data_external_data_ids.py +++ /dev/null @@ -1,123 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -from pydantic import Field -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.key_value import KeyValue -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataExternalDataIDs(BaseModel): - """ - FieldDataExternalDataIDs - """ # noqa: E501 - external_data_identifiers: Optional[List[ExternalDataIdentifier]] = Field(default=None, alias="externalDataIdentifiers") - external_data_annotations: Optional[List[StrictStr]] = Field(default=None, alias="externalDataAnnotations") - external_data_id_sim_refs: Optional[Dict[str, List[KeyValue]]] = Field(default=None, alias="externalDataIDSimRefs") - __properties: ClassVar[List[str]] = ["externalDataIdentifiers", "externalDataAnnotations", "externalDataIDSimRefs"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataExternalDataIDs from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in external_data_identifiers (list) - _items = [] - if self.external_data_identifiers: - for _item in self.external_data_identifiers: - if _item: - _items.append(_item.to_dict()) - _dict['externalDataIdentifiers'] = _items - # override the default output from pydantic by calling `to_dict()` of each value in external_data_id_sim_refs (dict of array) - _field_dict_of_array = {} - if self.external_data_id_sim_refs: - for _key in self.external_data_id_sim_refs: - if self.external_data_id_sim_refs[_key] is not None: - _field_dict_of_array[_key] = [ - _item.to_dict() for _item in self.external_data_id_sim_refs[_key] - ] - _dict['externalDataIDSimRefs'] = _field_dict_of_array - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataExternalDataIDs from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataExternalDataIDs) in the input: " + _key) - - _obj = cls.model_validate({ - "externalDataIdentifiers": [ExternalDataIdentifier.from_dict(_item) for _item in obj.get("externalDataIdentifiers")] if obj.get("externalDataIdentifiers") is not None else None, - "externalDataAnnotations": obj.get("externalDataAnnotations"), - "externalDataIDSimRefs": dict( - (_k, - [KeyValue.from_dict(_item) for _item in _v] - if _v is not None - else None - ) - for _k, _v in obj.get("externalDataIDSimRefs").items() - ) - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_file_operation_results.py b/python-restclient/vcell_client/models/field_data_file_operation_results.py deleted file mode 100644 index c0395c993c..0000000000 --- a/python-restclient/vcell_client/models/field_data_file_operation_results.py +++ /dev/null @@ -1,138 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt -from pydantic import Field -from vcell_client.models.data_identifier import DataIdentifier -from vcell_client.models.extent import Extent -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.field_data_reference_info import FieldDataReferenceInfo -from vcell_client.models.i_size import ISize -from vcell_client.models.origin import Origin -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataFileOperationResults(BaseModel): - """ - FieldDataFileOperationResults - """ # noqa: E501 - data_identifier_arr: Optional[List[DataIdentifier]] = Field(default=None, alias="dataIdentifierArr") - external_data_identifier: Optional[ExternalDataIdentifier] = Field(default=None, alias="externalDataIdentifier") - i_size: Optional[ISize] = Field(default=None, alias="iSize") - origin: Optional[Origin] = None - extent: Optional[Extent] = None - times: Optional[List[Union[StrictFloat, StrictInt]]] = None - dependant_function_info: Optional[List[FieldDataReferenceInfo]] = Field(default=None, alias="dependantFunctionInfo") - __properties: ClassVar[List[str]] = ["dataIdentifierArr", "externalDataIdentifier", "iSize", "origin", "extent", "times", "dependantFunctionInfo"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataFileOperationResults from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in data_identifier_arr (list) - _items = [] - if self.data_identifier_arr: - for _item in self.data_identifier_arr: - if _item: - _items.append(_item.to_dict()) - _dict['dataIdentifierArr'] = _items - # override the default output from pydantic by calling `to_dict()` of external_data_identifier - if self.external_data_identifier: - _dict['externalDataIdentifier'] = self.external_data_identifier.to_dict() - # override the default output from pydantic by calling `to_dict()` of i_size - if self.i_size: - _dict['iSize'] = self.i_size.to_dict() - # override the default output from pydantic by calling `to_dict()` of origin - if self.origin: - _dict['origin'] = self.origin.to_dict() - # override the default output from pydantic by calling `to_dict()` of extent - if self.extent: - _dict['extent'] = self.extent.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in dependant_function_info (list) - _items = [] - if self.dependant_function_info: - for _item in self.dependant_function_info: - if _item: - _items.append(_item.to_dict()) - _dict['dependantFunctionInfo'] = _items - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataFileOperationResults from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataFileOperationResults) in the input: " + _key) - - _obj = cls.model_validate({ - "dataIdentifierArr": [DataIdentifier.from_dict(_item) for _item in obj.get("dataIdentifierArr")] if obj.get("dataIdentifierArr") is not None else None, - "externalDataIdentifier": ExternalDataIdentifier.from_dict(obj.get("externalDataIdentifier")) if obj.get("externalDataIdentifier") is not None else None, - "iSize": ISize.from_dict(obj.get("iSize")) if obj.get("iSize") is not None else None, - "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, - "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, - "times": obj.get("times"), - "dependantFunctionInfo": [FieldDataReferenceInfo.from_dict(_item) for _item in obj.get("dependantFunctionInfo")] if obj.get("dependantFunctionInfo") is not None else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_file_operation_spec.py b/python-restclient/vcell_client/models/field_data_file_operation_spec.py deleted file mode 100644 index c9a1e8774b..0000000000 --- a/python-restclient/vcell_client/models/field_data_file_operation_spec.py +++ /dev/null @@ -1,165 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.cartesian_mesh import CartesianMesh -from vcell_client.models.extent import Extent -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.i_size import ISize -from vcell_client.models.key_value import KeyValue -from vcell_client.models.origin import Origin -from vcell_client.models.user import User -from vcell_client.models.variable_type import VariableType -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataFileOperationSpec(BaseModel): - """ - FieldDataFileOperationSpec - """ # noqa: E501 - op_type: Optional[StrictInt] = Field(default=None, alias="opType") - short_spec_data: Optional[List[List[List[StrictInt]]]] = Field(default=None, alias="shortSpecData") - double_spec_data: Optional[List[List[List[Union[StrictFloat, StrictInt]]]]] = Field(default=None, alias="doubleSpecData") - cartesian_mesh: Optional[CartesianMesh] = Field(default=None, alias="cartesianMesh") - spec_edi: Optional[ExternalDataIdentifier] = Field(default=None, alias="specEDI") - var_names: Optional[List[StrictStr]] = Field(default=None, alias="varNames") - variable_types: Optional[List[VariableType]] = Field(default=None, alias="variableTypes") - times: Optional[List[Union[StrictFloat, StrictInt]]] = None - owner: Optional[User] = None - origin: Optional[Origin] = None - extent: Optional[Extent] = None - isize: Optional[ISize] = None - annotation: Optional[StrictStr] = None - source_sim_param_scan_job_index: Optional[StrictInt] = Field(default=None, alias="sourceSimParamScanJobIndex") - source_sim_data_key: Optional[KeyValue] = Field(default=None, alias="sourceSimDataKey") - source_owner: Optional[User] = Field(default=None, alias="sourceOwner") - field_data_name: Optional[StrictStr] = Field(default=None, alias="fieldDataName") - __properties: ClassVar[List[str]] = ["opType", "shortSpecData", "doubleSpecData", "cartesianMesh", "specEDI", "varNames", "variableTypes", "times", "owner", "origin", "extent", "isize", "annotation", "sourceSimParamScanJobIndex", "sourceSimDataKey", "sourceOwner", "fieldDataName"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataFileOperationSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of cartesian_mesh - if self.cartesian_mesh: - _dict['cartesianMesh'] = self.cartesian_mesh.to_dict() - # override the default output from pydantic by calling `to_dict()` of spec_edi - if self.spec_edi: - _dict['specEDI'] = self.spec_edi.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in variable_types (list) - _items = [] - if self.variable_types: - for _item in self.variable_types: - if _item: - _items.append(_item.to_dict()) - _dict['variableTypes'] = _items - # override the default output from pydantic by calling `to_dict()` of owner - if self.owner: - _dict['owner'] = self.owner.to_dict() - # override the default output from pydantic by calling `to_dict()` of origin - if self.origin: - _dict['origin'] = self.origin.to_dict() - # override the default output from pydantic by calling `to_dict()` of extent - if self.extent: - _dict['extent'] = self.extent.to_dict() - # override the default output from pydantic by calling `to_dict()` of isize - if self.isize: - _dict['isize'] = self.isize.to_dict() - # override the default output from pydantic by calling `to_dict()` of source_sim_data_key - if self.source_sim_data_key: - _dict['sourceSimDataKey'] = self.source_sim_data_key.to_dict() - # override the default output from pydantic by calling `to_dict()` of source_owner - if self.source_owner: - _dict['sourceOwner'] = self.source_owner.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataFileOperationSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataFileOperationSpec) in the input: " + _key) - - _obj = cls.model_validate({ - "opType": obj.get("opType"), - "shortSpecData": obj.get("shortSpecData"), - "doubleSpecData": obj.get("doubleSpecData"), - "cartesianMesh": CartesianMesh.from_dict(obj.get("cartesianMesh")) if obj.get("cartesianMesh") is not None else None, - "specEDI": ExternalDataIdentifier.from_dict(obj.get("specEDI")) if obj.get("specEDI") is not None else None, - "varNames": obj.get("varNames"), - "variableTypes": [VariableType.from_dict(_item) for _item in obj.get("variableTypes")] if obj.get("variableTypes") is not None else None, - "times": obj.get("times"), - "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None, - "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, - "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, - "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, - "annotation": obj.get("annotation"), - "sourceSimParamScanJobIndex": obj.get("sourceSimParamScanJobIndex"), - "sourceSimDataKey": KeyValue.from_dict(obj.get("sourceSimDataKey")) if obj.get("sourceSimDataKey") is not None else None, - "sourceOwner": User.from_dict(obj.get("sourceOwner")) if obj.get("sourceOwner") is not None else None, - "fieldDataName": obj.get("fieldDataName") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_info.py b/python-restclient/vcell_client/models/field_data_info.py deleted file mode 100644 index ad26925cd3..0000000000 --- a/python-restclient/vcell_client/models/field_data_info.py +++ /dev/null @@ -1,122 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt -from pydantic import Field -from vcell_client.models.data_identifier import DataIdentifier -from vcell_client.models.extent import Extent -from vcell_client.models.i_size import ISize -from vcell_client.models.origin import Origin -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataInfo(BaseModel): - """ - FieldDataInfo - """ # noqa: E501 - extent: Optional[Extent] = None - origin: Optional[Origin] = None - isize: Optional[ISize] = None - data_identifier: Optional[List[DataIdentifier]] = Field(default=None, alias="dataIdentifier") - times: Optional[List[Union[StrictFloat, StrictInt]]] = None - __properties: ClassVar[List[str]] = ["extent", "origin", "isize", "dataIdentifier", "times"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataInfo from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of extent - if self.extent: - _dict['extent'] = self.extent.to_dict() - # override the default output from pydantic by calling `to_dict()` of origin - if self.origin: - _dict['origin'] = self.origin.to_dict() - # override the default output from pydantic by calling `to_dict()` of isize - if self.isize: - _dict['isize'] = self.isize.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in data_identifier (list) - _items = [] - if self.data_identifier: - for _item in self.data_identifier: - if _item: - _items.append(_item.to_dict()) - _dict['dataIdentifier'] = _items - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataInfo from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataInfo) in the input: " + _key) - - _obj = cls.model_validate({ - "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, - "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, - "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, - "dataIdentifier": [DataIdentifier.from_dict(_item) for _item in obj.get("dataIdentifier")] if obj.get("dataIdentifier") is not None else None, - "times": obj.get("times") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_no_copy_conflict.py b/python-restclient/vcell_client/models/field_data_no_copy_conflict.py deleted file mode 100644 index 81ebb1283b..0000000000 --- a/python-restclient/vcell_client/models/field_data_no_copy_conflict.py +++ /dev/null @@ -1,122 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel -from pydantic import Field -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.key_value import KeyValue -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataNoCopyConflict(BaseModel): - """ - FieldDataNoCopyConflict - """ # noqa: E501 - old_name_new_id_hash: Optional[Dict[str, ExternalDataIdentifier]] = Field(default=None, alias="oldNameNewIDHash") - old_name_old_ext_data_id_key_hash: Optional[Dict[str, KeyValue]] = Field(default=None, alias="oldNameOldExtDataIDKeyHash") - __properties: ClassVar[List[str]] = ["oldNameNewIDHash", "oldNameOldExtDataIDKeyHash"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataNoCopyConflict from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each value in old_name_new_id_hash (dict) - _field_dict = {} - if self.old_name_new_id_hash: - for _key in self.old_name_new_id_hash: - if self.old_name_new_id_hash[_key]: - _field_dict[_key] = self.old_name_new_id_hash[_key].to_dict() - _dict['oldNameNewIDHash'] = _field_dict - # override the default output from pydantic by calling `to_dict()` of each value in old_name_old_ext_data_id_key_hash (dict) - _field_dict = {} - if self.old_name_old_ext_data_id_key_hash: - for _key in self.old_name_old_ext_data_id_key_hash: - if self.old_name_old_ext_data_id_key_hash[_key]: - _field_dict[_key] = self.old_name_old_ext_data_id_key_hash[_key].to_dict() - _dict['oldNameOldExtDataIDKeyHash'] = _field_dict - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataNoCopyConflict from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataNoCopyConflict) in the input: " + _key) - - _obj = cls.model_validate({ - "oldNameNewIDHash": dict( - (_k, ExternalDataIdentifier.from_dict(_v)) - for _k, _v in obj.get("oldNameNewIDHash").items() - ) - if obj.get("oldNameNewIDHash") is not None - else None, - "oldNameOldExtDataIDKeyHash": dict( - (_k, KeyValue.from_dict(_v)) - for _k, _v in obj.get("oldNameOldExtDataIDKeyHash").items() - ) - if obj.get("oldNameOldExtDataIDKeyHash") is not None - else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_reference_info.py b/python-restclient/vcell_client/models/field_data_reference_info.py deleted file mode 100644 index 098481c735..0000000000 --- a/python-restclient/vcell_client/models/field_data_reference_info.py +++ /dev/null @@ -1,110 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -from pydantic import Field -from vcell_client.models.key_value import KeyValue -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataReferenceInfo(BaseModel): - """ - FieldDataReferenceInfo - """ # noqa: E501 - reference_source_type: Optional[StrictStr] = Field(default=None, alias="referenceSourceType") - reference_source_name: Optional[StrictStr] = Field(default=None, alias="referenceSourceName") - application_name: Optional[StrictStr] = Field(default=None, alias="applicationName") - simulation_name: Optional[StrictStr] = Field(default=None, alias="simulationName") - ref_source_version_date: Optional[StrictStr] = Field(default=None, alias="refSourceVersionDate") - func_names: Optional[List[StrictStr]] = Field(default=None, alias="funcNames") - ref_source_version_key: Optional[KeyValue] = Field(default=None, alias="refSourceVersionKey") - __properties: ClassVar[List[str]] = ["referenceSourceType", "referenceSourceName", "applicationName", "simulationName", "refSourceVersionDate", "funcNames", "refSourceVersionKey"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataReferenceInfo from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of ref_source_version_key - if self.ref_source_version_key: - _dict['refSourceVersionKey'] = self.ref_source_version_key.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataReferenceInfo from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataReferenceInfo) in the input: " + _key) - - _obj = cls.model_validate({ - "referenceSourceType": obj.get("referenceSourceType"), - "referenceSourceName": obj.get("referenceSourceName"), - "applicationName": obj.get("applicationName"), - "simulationName": obj.get("simulationName"), - "refSourceVersionDate": obj.get("refSourceVersionDate"), - "funcNames": obj.get("funcNames"), - "refSourceVersionKey": KeyValue.from_dict(obj.get("refSourceVersionKey")) if obj.get("refSourceVersionKey") is not None else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/field_data_references.py b/python-restclient/vcell_client/models/field_data_references.py deleted file mode 100644 index 5143fe7559..0000000000 --- a/python-restclient/vcell_client/models/field_data_references.py +++ /dev/null @@ -1,123 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -from pydantic import Field -from vcell_client.models.external_data_identifier import ExternalDataIdentifier -from vcell_client.models.key_value import KeyValue -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class FieldDataReferences(BaseModel): - """ - FieldDataReferences - """ # noqa: E501 - external_data_identifiers: Optional[List[ExternalDataIdentifier]] = Field(default=None, alias="externalDataIdentifiers") - external_data_annotations: Optional[List[StrictStr]] = Field(default=None, alias="externalDataAnnotations") - external_data_id_sim_refs: Optional[Dict[str, List[KeyValue]]] = Field(default=None, alias="externalDataIDSimRefs") - __properties: ClassVar[List[str]] = ["externalDataIdentifiers", "externalDataAnnotations", "externalDataIDSimRefs"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of FieldDataReferences from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in external_data_identifiers (list) - _items = [] - if self.external_data_identifiers: - for _item in self.external_data_identifiers: - if _item: - _items.append(_item.to_dict()) - _dict['externalDataIdentifiers'] = _items - # override the default output from pydantic by calling `to_dict()` of each value in external_data_id_sim_refs (dict of array) - _field_dict_of_array = {} - if self.external_data_id_sim_refs: - for _key in self.external_data_id_sim_refs: - if self.external_data_id_sim_refs[_key] is not None: - _field_dict_of_array[_key] = [ - _item.to_dict() for _item in self.external_data_id_sim_refs[_key] - ] - _dict['externalDataIDSimRefs'] = _field_dict_of_array - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of FieldDataReferences from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in FieldDataReferences) in the input: " + _key) - - _obj = cls.model_validate({ - "externalDataIdentifiers": [ExternalDataIdentifier.from_dict(_item) for _item in obj.get("externalDataIdentifiers")] if obj.get("externalDataIdentifiers") is not None else None, - "externalDataAnnotations": obj.get("externalDataAnnotations"), - "externalDataIDSimRefs": dict( - (_k, - [KeyValue.from_dict(_item) for _item in _v] - if _v is not None - else None - ) - for _k, _v in obj.get("externalDataIDSimRefs").items() - ) - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/group_access.py b/python-restclient/vcell_client/models/group_access.py deleted file mode 100644 index e57950d5de..0000000000 --- a/python-restclient/vcell_client/models/group_access.py +++ /dev/null @@ -1,95 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class GroupAccess(BaseModel): - """ - GroupAccess - """ # noqa: E501 - groupid: Optional[Union[StrictFloat, StrictInt]] = None - description: Optional[StrictStr] = None - __properties: ClassVar[List[str]] = ["groupid", "description"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of GroupAccess from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of GroupAccess from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in GroupAccess) in the input: " + _key) - - _obj = cls.model_validate({ - "groupid": obj.get("groupid"), - "description": obj.get("description") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/identity_provider.py b/python-restclient/vcell_client/models/identity_provider.py deleted file mode 100644 index 9432e37bc2..0000000000 --- a/python-restclient/vcell_client/models/identity_provider.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import json -import pprint -import re # noqa: F401 -from enum import Enum - - - -try: - from typing import Self -except ImportError: - from typing_extensions import Self - - -class IdentityProvider(str, Enum): - """ - IdentityProvider - """ - - """ - allowed enum values - """ - AUTH0 = 'AUTH0' - KEYCLOAK = 'KEYCLOAK' - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of IdentityProvider from a JSON string""" - return cls(json.loads(json_str)) - - diff --git a/python-restclient/vcell_client/models/map_user.py b/python-restclient/vcell_client/models/map_user.py deleted file mode 100644 index bf49fab4cd..0000000000 --- a/python-restclient/vcell_client/models/map_user.py +++ /dev/null @@ -1,96 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class MapUser(BaseModel): - """ - MapUser - """ # noqa: E501 - user_id: Optional[StrictStr] = Field(default=None, alias="userID") - password: Optional[StrictStr] = None - __properties: ClassVar[List[str]] = ["userID", "password"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of MapUser from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of MapUser from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in MapUser) in the input: " + _key) - - _obj = cls.model_validate({ - "userID": obj.get("userID"), - "password": obj.get("password") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/override_representation.py b/python-restclient/vcell_client/models/override_representation.py deleted file mode 100644 index 5d4d30d950..0000000000 --- a/python-restclient/vcell_client/models/override_representation.py +++ /dev/null @@ -1,101 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictInt, StrictStr -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class OverrideRepresentation(BaseModel): - """ - OverrideRepresentation - """ # noqa: E501 - name: Optional[StrictStr] = None - type: Optional[StrictStr] = None - expression: Optional[StrictStr] = None - values: Optional[List[StrictStr]] = None - cardinality: Optional[StrictInt] = None - __properties: ClassVar[List[str]] = ["name", "type", "expression", "values", "cardinality"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of OverrideRepresentation from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of OverrideRepresentation from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in OverrideRepresentation) in the input: " + _key) - - _obj = cls.model_validate({ - "name": obj.get("name"), - "type": obj.get("type"), - "expression": obj.get("expression"), - "values": obj.get("values"), - "cardinality": obj.get("cardinality") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/save_field_data_from_file.py b/python-restclient/vcell_client/models/save_field_data_from_file.py deleted file mode 100644 index 839d065eb6..0000000000 --- a/python-restclient/vcell_client/models/save_field_data_from_file.py +++ /dev/null @@ -1,120 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.extent import Extent -from vcell_client.models.i_size import ISize -from vcell_client.models.origin import Origin -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class SaveFieldDataFromFile(BaseModel): - """ - SaveFieldDataFromFile - """ # noqa: E501 - short_spec_data: Optional[List[List[List[StrictInt]]]] = Field(default=None, alias="shortSpecData") - var_names: Optional[List[StrictStr]] = Field(default=None, alias="varNames") - times: Optional[List[Union[StrictFloat, StrictInt]]] = None - origin: Optional[Origin] = None - extent: Optional[Extent] = None - isize: Optional[ISize] = None - annotation: Optional[StrictStr] = None - name: Optional[StrictStr] = None - __properties: ClassVar[List[str]] = ["shortSpecData", "varNames", "times", "origin", "extent", "isize", "annotation", "name"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of SaveFieldDataFromFile from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of origin - if self.origin: - _dict['origin'] = self.origin.to_dict() - # override the default output from pydantic by calling `to_dict()` of extent - if self.extent: - _dict['extent'] = self.extent.to_dict() - # override the default output from pydantic by calling `to_dict()` of isize - if self.isize: - _dict['isize'] = self.isize.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of SaveFieldDataFromFile from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in SaveFieldDataFromFile) in the input: " + _key) - - _obj = cls.model_validate({ - "shortSpecData": obj.get("shortSpecData"), - "varNames": obj.get("varNames"), - "times": obj.get("times"), - "origin": Origin.from_dict(obj.get("origin")) if obj.get("origin") is not None else None, - "extent": Extent.from_dict(obj.get("extent")) if obj.get("extent") is not None else None, - "isize": ISize.from_dict(obj.get("isize")) if obj.get("isize") is not None else None, - "annotation": obj.get("annotation"), - "name": obj.get("name") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/simulation.py b/python-restclient/vcell_client/models/simulation.py deleted file mode 100644 index 420edfac22..0000000000 --- a/python-restclient/vcell_client/models/simulation.py +++ /dev/null @@ -1,93 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class Simulation(BaseModel): - """ - Simulation - """ # noqa: E501 - name: Optional[StrictStr] = None - __properties: ClassVar[List[str]] = ["name"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of Simulation from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of Simulation from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in Simulation) in the input: " + _key) - - _obj = cls.model_validate({ - "name": obj.get("name") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/simulation_execution_status.py b/python-restclient/vcell_client/models/simulation_execution_status.py deleted file mode 100644 index 3b3427ed0a..0000000000 --- a/python-restclient/vcell_client/models/simulation_execution_status.py +++ /dev/null @@ -1,121 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from datetime import date -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictBool, StrictStr -from pydantic import Field -from vcell_client.models.htc_job_id import HtcJobID -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class SimulationExecutionStatus(BaseModel): - """ - SimulationExecutionStatus - """ # noqa: E501 - field_start_date: Optional[date] = Field(default=None, alias="fieldStartDate") - field_latest_update_date: Optional[date] = Field(default=None, alias="fieldLatestUpdateDate") - field_end_date: Optional[date] = Field(default=None, alias="fieldEndDate") - field_compute_host: Optional[StrictStr] = Field(default=None, alias="fieldComputeHost") - field_has_data: Optional[StrictBool] = Field(default=None, alias="fieldHasData") - field_htc_job_id: Optional[HtcJobID] = Field(default=None, alias="fieldHtcJobID") - compute_host: Optional[StrictStr] = Field(default=None, alias="computeHost") - end_date: Optional[date] = Field(default=None, alias="endDate") - latest_update_date: Optional[date] = Field(default=None, alias="latestUpdateDate") - start_date: Optional[date] = Field(default=None, alias="startDate") - htc_job_id: Optional[HtcJobID] = Field(default=None, alias="htcJobID") - __properties: ClassVar[List[str]] = ["fieldStartDate", "fieldLatestUpdateDate", "fieldEndDate", "fieldComputeHost", "fieldHasData", "fieldHtcJobID", "computeHost", "endDate", "latestUpdateDate", "startDate", "htcJobID"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of SimulationExecutionStatus from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of field_htc_job_id - if self.field_htc_job_id: - _dict['fieldHtcJobID'] = self.field_htc_job_id.to_dict() - # override the default output from pydantic by calling `to_dict()` of htc_job_id - if self.htc_job_id: - _dict['htcJobID'] = self.htc_job_id.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of SimulationExecutionStatus from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in SimulationExecutionStatus) in the input: " + _key) - - _obj = cls.model_validate({ - "fieldStartDate": obj.get("fieldStartDate"), - "fieldLatestUpdateDate": obj.get("fieldLatestUpdateDate"), - "fieldEndDate": obj.get("fieldEndDate"), - "fieldComputeHost": obj.get("fieldComputeHost"), - "fieldHasData": obj.get("fieldHasData"), - "fieldHtcJobID": HtcJobID.from_dict(obj.get("fieldHtcJobID")) if obj.get("fieldHtcJobID") is not None else None, - "computeHost": obj.get("computeHost"), - "endDate": obj.get("endDate"), - "latestUpdateDate": obj.get("latestUpdateDate"), - "startDate": obj.get("startDate"), - "htcJobID": HtcJobID.from_dict(obj.get("htcJobID")) if obj.get("htcJobID") is not None else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/simulation_job_status.py b/python-restclient/vcell_client/models/simulation_job_status.py deleted file mode 100644 index 5950651798..0000000000 --- a/python-restclient/vcell_client/models/simulation_job_status.py +++ /dev/null @@ -1,174 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from datetime import date -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.scheduler_status import SchedulerStatus -from vcell_client.models.simulation_execution_status import SimulationExecutionStatus -from vcell_client.models.simulation_message import SimulationMessage -from vcell_client.models.simulation_queue_entry_status import SimulationQueueEntryStatus -from vcell_client.models.v_cell_server_id import VCellServerID -from vcell_client.models.vc_simulation_identifier import VCSimulationIdentifier -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class SimulationJobStatus(BaseModel): - """ - SimulationJobStatus - """ # noqa: E501 - field_time_date_stamp: Optional[date] = Field(default=None, alias="fieldTimeDateStamp") - field_vc_sim_id: Optional[VCSimulationIdentifier] = Field(default=None, alias="fieldVCSimID") - field_submit_date: Optional[date] = Field(default=None, alias="fieldSubmitDate") - field_scheduler_status: Optional[SchedulerStatus] = Field(default=None, alias="fieldSchedulerStatus") - field_task_id: Optional[StrictInt] = Field(default=None, alias="fieldTaskID") - field_simulation_message: Optional[SimulationMessage] = Field(default=None, alias="fieldSimulationMessage") - field_server_id: Optional[VCellServerID] = Field(default=None, alias="fieldServerID") - field_job_index: Optional[StrictInt] = Field(default=None, alias="fieldJobIndex") - field_simulation_queue_entry_status: Optional[SimulationQueueEntryStatus] = Field(default=None, alias="fieldSimulationQueueEntryStatus") - field_simulation_execution_status: Optional[SimulationExecutionStatus] = Field(default=None, alias="fieldSimulationExecutionStatus") - compute_host: Optional[StrictStr] = Field(default=None, alias="computeHost") - end_date: Optional[date] = Field(default=None, alias="endDate") - job_index: Optional[StrictInt] = Field(default=None, alias="jobIndex") - scheduler_status: Optional[SchedulerStatus] = Field(default=None, alias="schedulerStatus") - server_id: Optional[VCellServerID] = Field(default=None, alias="serverID") - simulation_execution_status: Optional[SimulationExecutionStatus] = Field(default=None, alias="simulationExecutionStatus") - simulation_queue_entry_status: Optional[SimulationQueueEntryStatus] = Field(default=None, alias="simulationQueueEntryStatus") - start_date: Optional[date] = Field(default=None, alias="startDate") - simulation_message: Optional[SimulationMessage] = Field(default=None, alias="simulationMessage") - submit_date: Optional[date] = Field(default=None, alias="submitDate") - task_id: Optional[StrictInt] = Field(default=None, alias="taskID") - time_date_stamp: Optional[date] = Field(default=None, alias="timeDateStamp") - v_c_simulation_identifier: Optional[VCSimulationIdentifier] = Field(default=None, alias="vCSimulationIdentifier") - __properties: ClassVar[List[str]] = ["fieldTimeDateStamp", "fieldVCSimID", "fieldSubmitDate", "fieldSchedulerStatus", "fieldTaskID", "fieldSimulationMessage", "fieldServerID", "fieldJobIndex", "fieldSimulationQueueEntryStatus", "fieldSimulationExecutionStatus", "computeHost", "endDate", "jobIndex", "schedulerStatus", "serverID", "simulationExecutionStatus", "simulationQueueEntryStatus", "startDate", "simulationMessage", "submitDate", "taskID", "timeDateStamp", "vCSimulationIdentifier"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of SimulationJobStatus from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of field_vc_sim_id - if self.field_vc_sim_id: - _dict['fieldVCSimID'] = self.field_vc_sim_id.to_dict() - # override the default output from pydantic by calling `to_dict()` of field_simulation_message - if self.field_simulation_message: - _dict['fieldSimulationMessage'] = self.field_simulation_message.to_dict() - # override the default output from pydantic by calling `to_dict()` of field_server_id - if self.field_server_id: - _dict['fieldServerID'] = self.field_server_id.to_dict() - # override the default output from pydantic by calling `to_dict()` of field_simulation_queue_entry_status - if self.field_simulation_queue_entry_status: - _dict['fieldSimulationQueueEntryStatus'] = self.field_simulation_queue_entry_status.to_dict() - # override the default output from pydantic by calling `to_dict()` of field_simulation_execution_status - if self.field_simulation_execution_status: - _dict['fieldSimulationExecutionStatus'] = self.field_simulation_execution_status.to_dict() - # override the default output from pydantic by calling `to_dict()` of server_id - if self.server_id: - _dict['serverID'] = self.server_id.to_dict() - # override the default output from pydantic by calling `to_dict()` of simulation_execution_status - if self.simulation_execution_status: - _dict['simulationExecutionStatus'] = self.simulation_execution_status.to_dict() - # override the default output from pydantic by calling `to_dict()` of simulation_queue_entry_status - if self.simulation_queue_entry_status: - _dict['simulationQueueEntryStatus'] = self.simulation_queue_entry_status.to_dict() - # override the default output from pydantic by calling `to_dict()` of simulation_message - if self.simulation_message: - _dict['simulationMessage'] = self.simulation_message.to_dict() - # override the default output from pydantic by calling `to_dict()` of v_c_simulation_identifier - if self.v_c_simulation_identifier: - _dict['vCSimulationIdentifier'] = self.v_c_simulation_identifier.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of SimulationJobStatus from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in SimulationJobStatus) in the input: " + _key) - - _obj = cls.model_validate({ - "fieldTimeDateStamp": obj.get("fieldTimeDateStamp"), - "fieldVCSimID": VCSimulationIdentifier.from_dict(obj.get("fieldVCSimID")) if obj.get("fieldVCSimID") is not None else None, - "fieldSubmitDate": obj.get("fieldSubmitDate"), - "fieldSchedulerStatus": obj.get("fieldSchedulerStatus"), - "fieldTaskID": obj.get("fieldTaskID"), - "fieldSimulationMessage": SimulationMessage.from_dict(obj.get("fieldSimulationMessage")) if obj.get("fieldSimulationMessage") is not None else None, - "fieldServerID": VCellServerID.from_dict(obj.get("fieldServerID")) if obj.get("fieldServerID") is not None else None, - "fieldJobIndex": obj.get("fieldJobIndex"), - "fieldSimulationQueueEntryStatus": SimulationQueueEntryStatus.from_dict(obj.get("fieldSimulationQueueEntryStatus")) if obj.get("fieldSimulationQueueEntryStatus") is not None else None, - "fieldSimulationExecutionStatus": SimulationExecutionStatus.from_dict(obj.get("fieldSimulationExecutionStatus")) if obj.get("fieldSimulationExecutionStatus") is not None else None, - "computeHost": obj.get("computeHost"), - "endDate": obj.get("endDate"), - "jobIndex": obj.get("jobIndex"), - "schedulerStatus": obj.get("schedulerStatus"), - "serverID": VCellServerID.from_dict(obj.get("serverID")) if obj.get("serverID") is not None else None, - "simulationExecutionStatus": SimulationExecutionStatus.from_dict(obj.get("simulationExecutionStatus")) if obj.get("simulationExecutionStatus") is not None else None, - "simulationQueueEntryStatus": SimulationQueueEntryStatus.from_dict(obj.get("simulationQueueEntryStatus")) if obj.get("simulationQueueEntryStatus") is not None else None, - "startDate": obj.get("startDate"), - "simulationMessage": SimulationMessage.from_dict(obj.get("simulationMessage")) if obj.get("simulationMessage") is not None else None, - "submitDate": obj.get("submitDate"), - "taskID": obj.get("taskID"), - "timeDateStamp": obj.get("timeDateStamp"), - "vCSimulationIdentifier": VCSimulationIdentifier.from_dict(obj.get("vCSimulationIdentifier")) if obj.get("vCSimulationIdentifier") is not None else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/simulation_queue_entry_status.py b/python-restclient/vcell_client/models/simulation_queue_entry_status.py deleted file mode 100644 index adf6452d5e..0000000000 --- a/python-restclient/vcell_client/models/simulation_queue_entry_status.py +++ /dev/null @@ -1,105 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from datetime import date -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictInt -from pydantic import Field -from vcell_client.models.simulation_queue_id import SimulationQueueID -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class SimulationQueueEntryStatus(BaseModel): - """ - SimulationQueueEntryStatus - """ # noqa: E501 - field_queue_priority: Optional[StrictInt] = Field(default=None, alias="fieldQueuePriority") - field_queue_date: Optional[date] = Field(default=None, alias="fieldQueueDate") - field_queue_id: Optional[SimulationQueueID] = Field(default=None, alias="fieldQueueID") - queue_date: Optional[date] = Field(default=None, alias="queueDate") - queue_id: Optional[SimulationQueueID] = Field(default=None, alias="queueID") - queue_priority: Optional[StrictInt] = Field(default=None, alias="queuePriority") - __properties: ClassVar[List[str]] = ["fieldQueuePriority", "fieldQueueDate", "fieldQueueID", "queueDate", "queueID", "queuePriority"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of SimulationQueueEntryStatus from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of SimulationQueueEntryStatus from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in SimulationQueueEntryStatus) in the input: " + _key) - - _obj = cls.model_validate({ - "fieldQueuePriority": obj.get("fieldQueuePriority"), - "fieldQueueDate": obj.get("fieldQueueDate"), - "fieldQueueID": obj.get("fieldQueueID"), - "queueDate": obj.get("queueDate"), - "queueID": obj.get("queueID"), - "queuePriority": obj.get("queuePriority") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/ucd_info.py b/python-restclient/vcell_client/models/ucd_info.py deleted file mode 100644 index dfb72c3909..0000000000 --- a/python-restclient/vcell_client/models/ucd_info.py +++ /dev/null @@ -1,148 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictInt -from pydantic import Field -from vcell_client.models.coordinate import Coordinate -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class UCDInfo(BaseModel): - """ - UCDInfo - """ # noqa: E501 - ucd_grid_nodes: Optional[List[List[List[Coordinate]]]] = Field(default=None, alias="ucdGridNodes") - ucd_membrane_quads: Optional[List[List[StrictInt]]] = Field(default=None, alias="ucdMembraneQuads") - reduced_ucd_grid_nodes_v: Optional[List[Coordinate]] = Field(default=None, alias="reducedUCDGridNodesV") - u_cd_grid_nodes: Optional[List[List[List[Coordinate]]]] = Field(default=None, alias="uCDGridNodes") - u_cd_membrane_quads: Optional[List[List[StrictInt]]] = Field(default=None, alias="uCDMembraneQuads") - num_volume_nodes_x: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesX") - num_volume_nodes_y: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesY") - num_volume_nodes_z: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesZ") - num_points_xyz: Optional[StrictInt] = Field(default=None, alias="numPointsXYZ") - num_volume_nodes_xy: Optional[StrictInt] = Field(default=None, alias="numVolumeNodesXY") - num_volume_cells: Optional[StrictInt] = Field(default=None, alias="numVolumeCells") - num_membrane_cells: Optional[StrictInt] = Field(default=None, alias="numMembraneCells") - __properties: ClassVar[List[str]] = ["ucdGridNodes", "ucdMembraneQuads", "reducedUCDGridNodesV", "uCDGridNodes", "uCDMembraneQuads", "numVolumeNodesX", "numVolumeNodesY", "numVolumeNodesZ", "numPointsXYZ", "numVolumeNodesXY", "numVolumeCells", "numMembraneCells"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of UCDInfo from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in ucd_grid_nodes (list of list) - _items = [] - if self.ucd_grid_nodes: - for _item in self.ucd_grid_nodes: - if _item: - _items.append( - [_inner_item.to_dict() for _inner_item in _item if _inner_item is not None] - ) - _dict['ucdGridNodes'] = _items - # override the default output from pydantic by calling `to_dict()` of each item in reduced_ucd_grid_nodes_v (list) - _items = [] - if self.reduced_ucd_grid_nodes_v: - for _item in self.reduced_ucd_grid_nodes_v: - if _item: - _items.append(_item.to_dict()) - _dict['reducedUCDGridNodesV'] = _items - # override the default output from pydantic by calling `to_dict()` of each item in u_cd_grid_nodes (list of list) - _items = [] - if self.u_cd_grid_nodes: - for _item in self.u_cd_grid_nodes: - if _item: - _items.append( - [_inner_item.to_dict() for _inner_item in _item if _inner_item is not None] - ) - _dict['uCDGridNodes'] = _items - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of UCDInfo from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in UCDInfo) in the input: " + _key) - - _obj = cls.model_validate({ - "ucdGridNodes": [ - [List[Coordinate].from_dict(_inner_item) for _inner_item in _item] - for _item in obj.get("ucdGridNodes") - ] if obj.get("ucdGridNodes") is not None else None, - "ucdMembraneQuads": obj.get("ucdMembraneQuads"), - "reducedUCDGridNodesV": [Coordinate.from_dict(_item) for _item in obj.get("reducedUCDGridNodesV")] if obj.get("reducedUCDGridNodesV") is not None else None, - "uCDGridNodes": [ - [List[Coordinate].from_dict(_inner_item) for _inner_item in _item] - for _item in obj.get("uCDGridNodes") - ] if obj.get("uCDGridNodes") is not None else None, - "uCDMembraneQuads": obj.get("uCDMembraneQuads"), - "numVolumeNodesX": obj.get("numVolumeNodesX"), - "numVolumeNodesY": obj.get("numVolumeNodesY"), - "numVolumeNodesZ": obj.get("numVolumeNodesZ"), - "numPointsXYZ": obj.get("numPointsXYZ"), - "numVolumeNodesXY": obj.get("numVolumeNodesXY"), - "numVolumeCells": obj.get("numVolumeCells"), - "numMembraneCells": obj.get("numMembraneCells") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/user1.py b/python-restclient/vcell_client/models/user1.py deleted file mode 100644 index 8044ff7c2e..0000000000 --- a/python-restclient/vcell_client/models/user1.py +++ /dev/null @@ -1,111 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictBool, StrictStr -from pydantic import Field -from vcell_client.models.key_value import KeyValue -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class User1(BaseModel): - """ - User1 - """ # noqa: E501 - user_name: Optional[StrictStr] = Field(default=None, alias="userName") - key: Optional[KeyValue] = None - i_d: Optional[KeyValue] = Field(default=None, alias="iD") - name: Optional[StrictStr] = None - publisher: Optional[StrictBool] = None - test_account: Optional[StrictBool] = Field(default=None, alias="testAccount") - __properties: ClassVar[List[str]] = ["userName", "key", "iD", "name", "publisher", "testAccount"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of User1 from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of key - if self.key: - _dict['key'] = self.key.to_dict() - # override the default output from pydantic by calling `to_dict()` of i_d - if self.i_d: - _dict['iD'] = self.i_d.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of User1 from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in User1) in the input: " + _key) - - _obj = cls.model_validate({ - "userName": obj.get("userName"), - "key": KeyValue.from_dict(obj.get("key")) if obj.get("key") is not None else None, - "iD": KeyValue.from_dict(obj.get("iD")) if obj.get("iD") is not None else None, - "name": obj.get("name"), - "publisher": obj.get("publisher"), - "testAccount": obj.get("testAccount") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/user_identity.py b/python-restclient/vcell_client/models/user_identity.py deleted file mode 100644 index 3bdb5e053e..0000000000 --- a/python-restclient/vcell_client/models/user_identity.py +++ /dev/null @@ -1,100 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from datetime import datetime -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class UserIdentity(BaseModel): - """ - UserIdentity - """ # noqa: E501 - id: Optional[Union[StrictFloat, StrictInt]] = None - user_name: Optional[StrictStr] = Field(default=None, alias="userName") - subject: Optional[StrictStr] = None - insert_date: Optional[datetime] = Field(default=None, alias="insertDate") - __properties: ClassVar[List[str]] = ["id", "userName", "subject", "insertDate"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of UserIdentity from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of UserIdentity from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in UserIdentity) in the input: " + _key) - - _obj = cls.model_validate({ - "id": obj.get("id"), - "userName": obj.get("userName"), - "subject": obj.get("subject"), - "insertDate": obj.get("insertDate") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/v_cell_server_id.py b/python-restclient/vcell_client/models/v_cell_server_id.py deleted file mode 100644 index d87c29a87a..0000000000 --- a/python-restclient/vcell_client/models/v_cell_server_id.py +++ /dev/null @@ -1,94 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictStr -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class VCellServerID(BaseModel): - """ - VCellServerID - """ # noqa: E501 - server_id: Optional[StrictStr] = Field(default=None, alias="serverID") - __properties: ClassVar[List[str]] = ["serverID"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of VCellServerID from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of VCellServerID from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in VCellServerID) in the input: " + _key) - - _obj = cls.model_validate({ - "serverID": obj.get("serverID") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/version.py b/python-restclient/vcell_client/models/version.py deleted file mode 100644 index 9407f894eb..0000000000 --- a/python-restclient/vcell_client/models/version.py +++ /dev/null @@ -1,157 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from datetime import date -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr -from pydantic import Field -from vcell_client.models.group_access import GroupAccess -from vcell_client.models.key_value import KeyValue -from vcell_client.models.user import User -from vcell_client.models.version_flag import VersionFlag -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class Version(BaseModel): - """ - Version - """ # noqa: E501 - version_key: Optional[KeyValue] = Field(default=None, alias="versionKey") - version_name: Optional[StrictStr] = Field(default=None, alias="versionName") - version_owner: Optional[User] = Field(default=None, alias="versionOwner") - version_group_access: Optional[GroupAccess] = Field(default=None, alias="versionGroupAccess") - version_branch_point_ref: Optional[KeyValue] = Field(default=None, alias="versionBranchPointRef") - version_branch_id: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="versionBranchID") - version_date: Optional[date] = Field(default=None, alias="versionDate") - version_flag: Optional[VersionFlag] = Field(default=None, alias="versionFlag") - version_annot: Optional[StrictStr] = Field(default=None, alias="versionAnnot") - annot: Optional[StrictStr] = None - branch_id: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="branchID") - branch_point_ref_key: Optional[KeyValue] = Field(default=None, alias="branchPointRefKey") - var_date: Optional[date] = Field(default=None, alias="date") - flag: Optional[VersionFlag] = None - group_access: Optional[GroupAccess] = Field(default=None, alias="groupAccess") - name: Optional[StrictStr] = None - owner: Optional[User] = None - __properties: ClassVar[List[str]] = ["versionKey", "versionName", "versionOwner", "versionGroupAccess", "versionBranchPointRef", "versionBranchID", "versionDate", "versionFlag", "versionAnnot", "annot", "branchID", "branchPointRefKey", "date", "flag", "groupAccess", "name", "owner"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of Version from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of version_key - if self.version_key: - _dict['versionKey'] = self.version_key.to_dict() - # override the default output from pydantic by calling `to_dict()` of version_owner - if self.version_owner: - _dict['versionOwner'] = self.version_owner.to_dict() - # override the default output from pydantic by calling `to_dict()` of version_group_access - if self.version_group_access: - _dict['versionGroupAccess'] = self.version_group_access.to_dict() - # override the default output from pydantic by calling `to_dict()` of version_branch_point_ref - if self.version_branch_point_ref: - _dict['versionBranchPointRef'] = self.version_branch_point_ref.to_dict() - # override the default output from pydantic by calling `to_dict()` of version_flag - if self.version_flag: - _dict['versionFlag'] = self.version_flag.to_dict() - # override the default output from pydantic by calling `to_dict()` of branch_point_ref_key - if self.branch_point_ref_key: - _dict['branchPointRefKey'] = self.branch_point_ref_key.to_dict() - # override the default output from pydantic by calling `to_dict()` of flag - if self.flag: - _dict['flag'] = self.flag.to_dict() - # override the default output from pydantic by calling `to_dict()` of group_access - if self.group_access: - _dict['groupAccess'] = self.group_access.to_dict() - # override the default output from pydantic by calling `to_dict()` of owner - if self.owner: - _dict['owner'] = self.owner.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of Version from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in Version) in the input: " + _key) - - _obj = cls.model_validate({ - "versionKey": KeyValue.from_dict(obj.get("versionKey")) if obj.get("versionKey") is not None else None, - "versionName": obj.get("versionName"), - "versionOwner": User.from_dict(obj.get("versionOwner")) if obj.get("versionOwner") is not None else None, - "versionGroupAccess": GroupAccess.from_dict(obj.get("versionGroupAccess")) if obj.get("versionGroupAccess") is not None else None, - "versionBranchPointRef": KeyValue.from_dict(obj.get("versionBranchPointRef")) if obj.get("versionBranchPointRef") is not None else None, - "versionBranchID": obj.get("versionBranchID"), - "versionDate": obj.get("versionDate"), - "versionFlag": VersionFlag.from_dict(obj.get("versionFlag")) if obj.get("versionFlag") is not None else None, - "versionAnnot": obj.get("versionAnnot"), - "annot": obj.get("annot"), - "branchID": obj.get("branchID"), - "branchPointRefKey": KeyValue.from_dict(obj.get("branchPointRefKey")) if obj.get("branchPointRefKey") is not None else None, - "date": obj.get("date"), - "flag": VersionFlag.from_dict(obj.get("flag")) if obj.get("flag") is not None else None, - "groupAccess": GroupAccess.from_dict(obj.get("groupAccess")) if obj.get("groupAccess") is not None else None, - "name": obj.get("name"), - "owner": User.from_dict(obj.get("owner")) if obj.get("owner") is not None else None - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/version_flag.py b/python-restclient/vcell_client/models/version_flag.py deleted file mode 100644 index 312b972ebf..0000000000 --- a/python-restclient/vcell_client/models/version_flag.py +++ /dev/null @@ -1,102 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel, StrictBool, StrictInt -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class VersionFlag(BaseModel): - """ - VersionFlag - """ # noqa: E501 - version_flag: Optional[StrictInt] = Field(default=None, alias="versionFlag") - int_value: Optional[StrictInt] = Field(default=None, alias="intValue") - archived: Optional[StrictBool] = None - current: Optional[StrictBool] = None - published: Optional[StrictBool] = None - __properties: ClassVar[List[str]] = ["versionFlag", "intValue", "archived", "current", "published"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of VersionFlag from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of VersionFlag from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in VersionFlag) in the input: " + _key) - - _obj = cls.model_validate({ - "versionFlag": obj.get("versionFlag"), - "intValue": obj.get("intValue"), - "archived": obj.get("archived"), - "current": obj.get("current"), - "published": obj.get("published") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/versionable_type.py b/python-restclient/vcell_client/models/versionable_type.py deleted file mode 100644 index a349201ebc..0000000000 --- a/python-restclient/vcell_client/models/versionable_type.py +++ /dev/null @@ -1,108 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional, Union -from pydantic import BaseModel, StrictBool, StrictInt, StrictStr -from pydantic import Field -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class VersionableType(BaseModel): - """ - VersionableType - """ # noqa: E501 - v_type: Optional[StrictInt] = Field(default=None, alias="vType") - name: Optional[StrictStr] = None - v_class: Optional[Union[str, Any]] = Field(default=None, alias="vClass") - b_top_level: Optional[StrictBool] = Field(default=None, alias="bTopLevel") - code: Optional[StrictInt] = None - is_top_level: Optional[StrictBool] = Field(default=None, alias="isTopLevel") - type_name: Optional[StrictStr] = Field(default=None, alias="typeName") - version_class: Optional[Union[str, Any]] = Field(default=None, alias="versionClass") - __properties: ClassVar[List[str]] = ["vType", "name", "vClass", "bTopLevel", "code", "isTopLevel", "typeName", "versionClass"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of VersionableType from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of VersionableType from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in VersionableType) in the input: " + _key) - - _obj = cls.model_validate({ - "vType": obj.get("vType"), - "name": obj.get("name"), - "vClass": obj.get("vClass"), - "bTopLevel": obj.get("bTopLevel"), - "code": obj.get("code"), - "isTopLevel": obj.get("isTopLevel"), - "typeName": obj.get("typeName"), - "versionClass": obj.get("versionClass") - }) - return _obj - - diff --git a/python-restclient/vcell_client/models/versionable_type_version.py b/python-restclient/vcell_client/models/versionable_type_version.py deleted file mode 100644 index 8c77d0d488..0000000000 --- a/python-restclient/vcell_client/models/versionable_type_version.py +++ /dev/null @@ -1,104 +0,0 @@ -# coding: utf-8 - -""" - VCell API - - VCell API - - The version of the OpenAPI document: 1.0.1 - Contact: vcell_support@uchc.com - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - - -from typing import Any, ClassVar, Dict, List, Optional -from pydantic import BaseModel -from pydantic import Field -from vcell_client.models.version import Version -from vcell_client.models.versionable_type import VersionableType -try: - from typing import Self -except ImportError: - from typing_extensions import Self - -class VersionableTypeVersion(BaseModel): - """ - VersionableTypeVersion - """ # noqa: E501 - v_type: Optional[VersionableType] = Field(default=None, alias="vType") - version: Optional[Version] = None - __properties: ClassVar[List[str]] = ["vType", "version"] - - model_config = { - "populate_by_name": True, - "validate_assignment": True - } - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of VersionableTypeVersion from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - _dict = self.model_dump( - by_alias=True, - exclude={ - }, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of v_type - if self.v_type: - _dict['vType'] = self.v_type.to_dict() - # override the default output from pydantic by calling `to_dict()` of version - if self.version: - _dict['version'] = self.version.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Dict) -> Self: - """Create an instance of VersionableTypeVersion from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - # raise errors for additional fields in the input - for _key in obj.keys(): - if _key not in cls.__properties: - raise ValueError("Error due to additional fields (not defined in VersionableTypeVersion) in the input: " + _key) - - _obj = cls.model_validate({ - "vType": VersionableType.from_dict(obj.get("vType")) if obj.get("vType") is not None else None, - "version": Version.from_dict(obj.get("version")) if obj.get("version") is not None else None - }) - return _obj - - diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 2a54d3a046..42670fc967 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -100,3 +100,40 @@ src/main/java/org/vcell/restclient/model/UserRegistrationInfo.java src/main/java/org/vcell/restclient/model/VCSimulationIdentifier.java src/main/java/org/vcell/restclient/model/VariableDomain.java src/main/java/org/vcell/restclient/model/VariableType.java +src/test/java/org/vcell/restclient/model/AccesTokenRepresentationRecordTest.java +src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java +src/test/java/org/vcell/restclient/model/BatchSystemTypeTest.java +src/test/java/org/vcell/restclient/model/BioModelTest.java +src/test/java/org/vcell/restclient/model/BiomodelRefTest.java +src/test/java/org/vcell/restclient/model/DataIdentifierTest.java +src/test/java/org/vcell/restclient/model/DetailedStateTest.java +src/test/java/org/vcell/restclient/model/DomainTest.java +src/test/java/org/vcell/restclient/model/ExtentTest.java +src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java +src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java +src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java +src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java +src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java +src/test/java/org/vcell/restclient/model/HtcJobIDTest.java +src/test/java/org/vcell/restclient/model/ISizeTest.java +src/test/java/org/vcell/restclient/model/IdentityTest.java +src/test/java/org/vcell/restclient/model/KeyValueTest.java +src/test/java/org/vcell/restclient/model/MathmodelRefTest.java +src/test/java/org/vcell/restclient/model/OriginTest.java +src/test/java/org/vcell/restclient/model/PublicationTest.java +src/test/java/org/vcell/restclient/model/SchedulerStatusTest.java +src/test/java/org/vcell/restclient/model/SimulationExecutionStatusRecordTest.java +src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java +src/test/java/org/vcell/restclient/model/SimulationMessageTest.java +src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusRecordTest.java +src/test/java/org/vcell/restclient/model/SimulationQueueIDTest.java +src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java +src/test/java/org/vcell/restclient/model/StatusMessageTest.java +src/test/java/org/vcell/restclient/model/StatusTest.java +src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java +src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java +src/test/java/org/vcell/restclient/model/UserRegistrationInfoTest.java +src/test/java/org/vcell/restclient/model/UserTest.java +src/test/java/org/vcell/restclient/model/VCSimulationIdentifierTest.java +src/test/java/org/vcell/restclient/model/VariableDomainTest.java +src/test/java/org/vcell/restclient/model/VariableTypeTest.java diff --git a/vcell-restclient/docs/AccessTokenRepresentation.md b/vcell-restclient/docs/AccessTokenRepresentation.md deleted file mode 100644 index 03002821c1..0000000000 --- a/vcell-restclient/docs/AccessTokenRepresentation.md +++ /dev/null @@ -1,17 +0,0 @@ - - -# AccessTokenRepresentation - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**token** | **String** | | [optional] | -|**creationDateSeconds** | **Long** | | [optional] | -|**expireDateSeconds** | **Long** | | [optional] | -|**userId** | **String** | | [optional] | -|**userKey** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/CartesianMesh.md b/vcell-restclient/docs/CartesianMesh.md deleted file mode 100644 index 328206dd37..0000000000 --- a/vcell-restclient/docs/CartesianMesh.md +++ /dev/null @@ -1,28 +0,0 @@ - - -# CartesianMesh - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**compressedBytes** | **File** | | [optional] | -|**uCDInfo** | [**UCDInfo**](UCDInfo.md) | | [optional] | -|**geometryDimension** | **Integer** | | [optional] | -|**volumeRegionMapSubvolume** | **Map<String, Integer>** | | [optional] | -|**membraneRegionMapSubvolumesInOut** | **Map<String, Object>** | | [optional] | -|**numMembraneElements** | **Integer** | | [optional] | -|**numMembraneRegions** | **Integer** | | [optional] | -|**numVolumeElements** | **Integer** | | [optional] | -|**numVolumeRegions** | **Integer** | | [optional] | -|**iSize** | [**ISize**](ISize.md) | | [optional] | -|**sizeX** | **Integer** | | [optional] | -|**sizeY** | **Integer** | | [optional] | -|**sizeZ** | **Integer** | | [optional] | -|**membraneConnectivityOK** | **Boolean** | | [optional] | -|**outputFields** | **List<Object>** | | [optional] | -|**chomboMesh** | **Boolean** | | [optional] | - - - diff --git a/vcell-restclient/docs/Coordinate.md b/vcell-restclient/docs/Coordinate.md deleted file mode 100644 index 99fb04df19..0000000000 --- a/vcell-restclient/docs/Coordinate.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# Coordinate - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**x** | **Double** | | [optional] | -|**y** | **Double** | | [optional] | -|**z** | **Double** | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataDBOperationSpec.md b/vcell-restclient/docs/FieldDataDBOperationSpec.md deleted file mode 100644 index 984eece2e1..0000000000 --- a/vcell-restclient/docs/FieldDataDBOperationSpec.md +++ /dev/null @@ -1,20 +0,0 @@ - - -# FieldDataDBOperationSpec - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**opType** | **Integer** | | [optional] | -|**specEDI** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | -|**owner** | [**User**](User.md) | | [optional] | -|**newExtDataIDName** | **String** | | [optional] | -|**annotation** | **String** | | [optional] | -|**sourceNames** | **List<String>** | | [optional] | -|**sourceOwner** | [**VersionableTypeVersion**](VersionableTypeVersion.md) | | [optional] | -|**bIncludeSimRefs** | **Boolean** | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataExternalDataIDs.md b/vcell-restclient/docs/FieldDataExternalDataIDs.md deleted file mode 100644 index 9b6337e4f3..0000000000 --- a/vcell-restclient/docs/FieldDataExternalDataIDs.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# FieldDataExternalDataIDs - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**externalDataIdentifiers** | [**List<ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | -|**externalDataAnnotations** | **List<String>** | | [optional] | -|**externalDataIDSimRefs** | **Map<String, List<KeyValue>>** | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataFileOperationSpec.md b/vcell-restclient/docs/FieldDataFileOperationSpec.md deleted file mode 100644 index 66fe7fa7b9..0000000000 --- a/vcell-restclient/docs/FieldDataFileOperationSpec.md +++ /dev/null @@ -1,29 +0,0 @@ - - -# FieldDataFileOperationSpec - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**opType** | **Integer** | | [optional] | -|**shortSpecData** | **List<List<List<Integer>>>** | | [optional] | -|**doubleSpecData** | **List<List<List<Double>>>** | | [optional] | -|**cartesianMesh** | [**CartesianMesh**](CartesianMesh.md) | | [optional] | -|**specEDI** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | -|**varNames** | **List<String>** | | [optional] | -|**variableTypes** | [**List<VariableType>**](VariableType.md) | | [optional] | -|**times** | **List<Double>** | | [optional] | -|**owner** | [**User**](User.md) | | [optional] | -|**origin** | [**Origin**](Origin.md) | | [optional] | -|**extent** | [**Extent**](Extent.md) | | [optional] | -|**isize** | [**ISize**](ISize.md) | | [optional] | -|**annotation** | **String** | | [optional] | -|**sourceSimParamScanJobIndex** | **Integer** | | [optional] | -|**sourceSimDataKey** | [**KeyValue**](KeyValue.md) | | [optional] | -|**sourceOwner** | [**User**](User.md) | | [optional] | -|**fieldDataName** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataInfo.md b/vcell-restclient/docs/FieldDataInfo.md deleted file mode 100644 index 33a2c58321..0000000000 --- a/vcell-restclient/docs/FieldDataInfo.md +++ /dev/null @@ -1,17 +0,0 @@ - - -# FieldDataInfo - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**extent** | [**Extent**](Extent.md) | | [optional] | -|**origin** | [**Origin**](Origin.md) | | [optional] | -|**isize** | [**ISize**](ISize.md) | | [optional] | -|**dataIdentifier** | [**List<DataIdentifier>**](DataIdentifier.md) | | [optional] | -|**times** | **List<Double>** | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataNoCopyConflict.md b/vcell-restclient/docs/FieldDataNoCopyConflict.md deleted file mode 100644 index 5617027c2b..0000000000 --- a/vcell-restclient/docs/FieldDataNoCopyConflict.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# FieldDataNoCopyConflict - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**oldNameNewIDHash** | [**Map<String, ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | -|**oldNameOldExtDataIDKeyHash** | [**Map<String, KeyValue>**](KeyValue.md) | | [optional] | - - - diff --git a/vcell-restclient/docs/FieldDataReferences.md b/vcell-restclient/docs/FieldDataReferences.md deleted file mode 100644 index 31b2267473..0000000000 --- a/vcell-restclient/docs/FieldDataReferences.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# FieldDataReferences - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**externalDataIdentifiers** | [**List<ExternalDataIdentifier>**](ExternalDataIdentifier.md) | | [optional] | -|**externalDataAnnotations** | **List<String>** | | [optional] | -|**externalDataIDSimRefs** | **Map<String, List<KeyValue>>** | | [optional] | - - - diff --git a/vcell-restclient/docs/GroupAccess.md b/vcell-restclient/docs/GroupAccess.md deleted file mode 100644 index df4847f19c..0000000000 --- a/vcell-restclient/docs/GroupAccess.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# GroupAccess - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**groupid** | **BigDecimal** | | [optional] | -|**description** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/IdentityProvider.md b/vcell-restclient/docs/IdentityProvider.md deleted file mode 100644 index c54f3ef2eb..0000000000 --- a/vcell-restclient/docs/IdentityProvider.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# IdentityProvider - -## Enum - - -* `AUTH0` (value: `"AUTH0"`) - -* `KEYCLOAK` (value: `"KEYCLOAK"`) - - - diff --git a/vcell-restclient/docs/MapUser.md b/vcell-restclient/docs/MapUser.md deleted file mode 100644 index cd10a8ec2e..0000000000 --- a/vcell-restclient/docs/MapUser.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# MapUser - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**userID** | **String** | | [optional] | -|**password** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/OverrideRepresentation.md b/vcell-restclient/docs/OverrideRepresentation.md deleted file mode 100644 index cc6c9d934e..0000000000 --- a/vcell-restclient/docs/OverrideRepresentation.md +++ /dev/null @@ -1,17 +0,0 @@ - - -# OverrideRepresentation - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**name** | **String** | | [optional] | -|**type** | **String** | | [optional] | -|**expression** | **String** | | [optional] | -|**values** | **List<String>** | | [optional] | -|**cardinality** | **Integer** | | [optional] | - - - diff --git a/vcell-restclient/docs/Simulation.md b/vcell-restclient/docs/Simulation.md deleted file mode 100644 index e21fb4014b..0000000000 --- a/vcell-restclient/docs/Simulation.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# Simulation - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**name** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/SimulationExecutionStatus.md b/vcell-restclient/docs/SimulationExecutionStatus.md deleted file mode 100644 index e899206a68..0000000000 --- a/vcell-restclient/docs/SimulationExecutionStatus.md +++ /dev/null @@ -1,23 +0,0 @@ - - -# SimulationExecutionStatus - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**fieldStartDate** | **LocalDate** | | [optional] | -|**fieldLatestUpdateDate** | **LocalDate** | | [optional] | -|**fieldEndDate** | **LocalDate** | | [optional] | -|**fieldComputeHost** | **String** | | [optional] | -|**fieldHasData** | **Boolean** | | [optional] | -|**fieldHtcJobID** | [**HtcJobID**](HtcJobID.md) | | [optional] | -|**computeHost** | **String** | | [optional] | -|**endDate** | **LocalDate** | | [optional] | -|**latestUpdateDate** | **LocalDate** | | [optional] | -|**startDate** | **LocalDate** | | [optional] | -|**htcJobID** | [**HtcJobID**](HtcJobID.md) | | [optional] | - - - diff --git a/vcell-restclient/docs/SimulationJobStatus.md b/vcell-restclient/docs/SimulationJobStatus.md deleted file mode 100644 index dfbe7bb00e..0000000000 --- a/vcell-restclient/docs/SimulationJobStatus.md +++ /dev/null @@ -1,35 +0,0 @@ - - -# SimulationJobStatus - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**fieldTimeDateStamp** | **LocalDate** | | [optional] | -|**fieldVCSimID** | [**VCSimulationIdentifier**](VCSimulationIdentifier.md) | | [optional] | -|**fieldSubmitDate** | **LocalDate** | | [optional] | -|**fieldSchedulerStatus** | **SchedulerStatus** | | [optional] | -|**fieldTaskID** | **Integer** | | [optional] | -|**fieldSimulationMessage** | [**SimulationMessage**](SimulationMessage.md) | | [optional] | -|**fieldServerID** | [**VCellServerID**](VCellServerID.md) | | [optional] | -|**fieldJobIndex** | **Integer** | | [optional] | -|**fieldSimulationQueueEntryStatus** | [**SimulationQueueEntryStatus**](SimulationQueueEntryStatus.md) | | [optional] | -|**fieldSimulationExecutionStatus** | [**SimulationExecutionStatus**](SimulationExecutionStatus.md) | | [optional] | -|**computeHost** | **String** | | [optional] | -|**endDate** | **LocalDate** | | [optional] | -|**jobIndex** | **Integer** | | [optional] | -|**schedulerStatus** | **SchedulerStatus** | | [optional] | -|**serverID** | [**VCellServerID**](VCellServerID.md) | | [optional] | -|**simulationExecutionStatus** | [**SimulationExecutionStatus**](SimulationExecutionStatus.md) | | [optional] | -|**simulationQueueEntryStatus** | [**SimulationQueueEntryStatus**](SimulationQueueEntryStatus.md) | | [optional] | -|**startDate** | **LocalDate** | | [optional] | -|**simulationMessage** | [**SimulationMessage**](SimulationMessage.md) | | [optional] | -|**submitDate** | **LocalDate** | | [optional] | -|**taskID** | **Integer** | | [optional] | -|**timeDateStamp** | **LocalDate** | | [optional] | -|**vCSimulationIdentifier** | [**VCSimulationIdentifier**](VCSimulationIdentifier.md) | | [optional] | - - - diff --git a/vcell-restclient/docs/SimulationQueueEntryStatus.md b/vcell-restclient/docs/SimulationQueueEntryStatus.md deleted file mode 100644 index 80d9d48202..0000000000 --- a/vcell-restclient/docs/SimulationQueueEntryStatus.md +++ /dev/null @@ -1,18 +0,0 @@ - - -# SimulationQueueEntryStatus - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**fieldQueuePriority** | **Integer** | | [optional] | -|**fieldQueueDate** | **LocalDate** | | [optional] | -|**fieldQueueID** | **SimulationQueueID** | | [optional] | -|**queueDate** | **LocalDate** | | [optional] | -|**queueID** | **SimulationQueueID** | | [optional] | -|**queuePriority** | **Integer** | | [optional] | - - - diff --git a/vcell-restclient/docs/UCDInfo.md b/vcell-restclient/docs/UCDInfo.md deleted file mode 100644 index 122616cf52..0000000000 --- a/vcell-restclient/docs/UCDInfo.md +++ /dev/null @@ -1,24 +0,0 @@ - - -# UCDInfo - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**ucdGridNodes** | **List<List<List<Coordinate>>>** | | [optional] | -|**ucdMembraneQuads** | **List<List<Integer>>** | | [optional] | -|**reducedUCDGridNodesV** | [**List<Coordinate>**](Coordinate.md) | | [optional] | -|**uCDGridNodes** | **List<List<List<Coordinate>>>** | | [optional] | -|**uCDMembraneQuads** | **List<List<Integer>>** | | [optional] | -|**numVolumeNodesX** | **Integer** | | [optional] | -|**numVolumeNodesY** | **Integer** | | [optional] | -|**numVolumeNodesZ** | **Integer** | | [optional] | -|**numPointsXYZ** | **Integer** | | [optional] | -|**numVolumeNodesXY** | **Integer** | | [optional] | -|**numVolumeCells** | **Integer** | | [optional] | -|**numMembraneCells** | **Integer** | | [optional] | - - - diff --git a/vcell-restclient/docs/User1.md b/vcell-restclient/docs/User1.md deleted file mode 100644 index 575e576d73..0000000000 --- a/vcell-restclient/docs/User1.md +++ /dev/null @@ -1,18 +0,0 @@ - - -# User1 - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**userName** | **String** | | [optional] | -|**key** | [**KeyValue**](KeyValue.md) | | [optional] | -|**iD** | [**KeyValue**](KeyValue.md) | | [optional] | -|**name** | **String** | | [optional] | -|**publisher** | **Boolean** | | [optional] | -|**testAccount** | **Boolean** | | [optional] | - - - diff --git a/vcell-restclient/docs/UserIdentity.md b/vcell-restclient/docs/UserIdentity.md deleted file mode 100644 index 615df73fe4..0000000000 --- a/vcell-restclient/docs/UserIdentity.md +++ /dev/null @@ -1,16 +0,0 @@ - - -# UserIdentity - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**id** | **BigDecimal** | | [optional] | -|**userName** | **String** | | [optional] | -|**subject** | **String** | | [optional] | -|**insertDate** | **OffsetDateTime** | | [optional] | - - - diff --git a/vcell-restclient/docs/VCellServerID.md b/vcell-restclient/docs/VCellServerID.md deleted file mode 100644 index 1c42061235..0000000000 --- a/vcell-restclient/docs/VCellServerID.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# VCellServerID - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**serverID** | **String** | | [optional] | - - - diff --git a/vcell-restclient/docs/Version.md b/vcell-restclient/docs/Version.md deleted file mode 100644 index 852b2f66b0..0000000000 --- a/vcell-restclient/docs/Version.md +++ /dev/null @@ -1,29 +0,0 @@ - - -# Version - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**versionKey** | [**KeyValue**](KeyValue.md) | | [optional] | -|**versionName** | **String** | | [optional] | -|**versionOwner** | [**User**](User.md) | | [optional] | -|**versionGroupAccess** | [**GroupAccess**](GroupAccess.md) | | [optional] | -|**versionBranchPointRef** | [**KeyValue**](KeyValue.md) | | [optional] | -|**versionBranchID** | **BigDecimal** | | [optional] | -|**versionDate** | **LocalDate** | | [optional] | -|**versionFlag** | [**VersionFlag**](VersionFlag.md) | | [optional] | -|**versionAnnot** | **String** | | [optional] | -|**annot** | **String** | | [optional] | -|**branchID** | **BigDecimal** | | [optional] | -|**branchPointRefKey** | [**KeyValue**](KeyValue.md) | | [optional] | -|**date** | **LocalDate** | | [optional] | -|**flag** | [**VersionFlag**](VersionFlag.md) | | [optional] | -|**groupAccess** | [**GroupAccess**](GroupAccess.md) | | [optional] | -|**name** | **String** | | [optional] | -|**owner** | [**User**](User.md) | | [optional] | - - - diff --git a/vcell-restclient/docs/VersionFlag.md b/vcell-restclient/docs/VersionFlag.md deleted file mode 100644 index 3f087f8d8b..0000000000 --- a/vcell-restclient/docs/VersionFlag.md +++ /dev/null @@ -1,17 +0,0 @@ - - -# VersionFlag - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**versionFlag** | **Integer** | | [optional] | -|**intValue** | **Integer** | | [optional] | -|**archived** | **Boolean** | | [optional] | -|**current** | **Boolean** | | [optional] | -|**published** | **Boolean** | | [optional] | - - - diff --git a/vcell-restclient/docs/VersionableType.md b/vcell-restclient/docs/VersionableType.md deleted file mode 100644 index e02eeae45e..0000000000 --- a/vcell-restclient/docs/VersionableType.md +++ /dev/null @@ -1,20 +0,0 @@ - - -# VersionableType - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**vType** | **Integer** | | [optional] | -|**name** | **String** | | [optional] | -|**vClass** | **Object** | | [optional] | -|**bTopLevel** | **Boolean** | | [optional] | -|**code** | **Integer** | | [optional] | -|**isTopLevel** | **Boolean** | | [optional] | -|**typeName** | **String** | | [optional] | -|**versionClass** | **Object** | | [optional] | - - - diff --git a/vcell-restclient/docs/VersionableTypeVersion.md b/vcell-restclient/docs/VersionableTypeVersion.md deleted file mode 100644 index c2c7f905fb..0000000000 --- a/vcell-restclient/docs/VersionableTypeVersion.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# VersionableTypeVersion - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**vType** | [**VersionableType**](VersionableType.md) | | [optional] | -|**version** | [**Version**](Version.md) | | [optional] | - - - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java deleted file mode 100644 index b08941fe49..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/CartesianMesh.java +++ /dev/null @@ -1,733 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.io.File; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.UCDInfo; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * CartesianMesh - */ -@JsonPropertyOrder({ - CartesianMesh.JSON_PROPERTY_COMPRESSED_BYTES, - CartesianMesh.JSON_PROPERTY_U_C_D_INFO, - CartesianMesh.JSON_PROPERTY_GEOMETRY_DIMENSION, - CartesianMesh.JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME, - CartesianMesh.JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT, - CartesianMesh.JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS, - CartesianMesh.JSON_PROPERTY_NUM_MEMBRANE_REGIONS, - CartesianMesh.JSON_PROPERTY_NUM_VOLUME_ELEMENTS, - CartesianMesh.JSON_PROPERTY_NUM_VOLUME_REGIONS, - CartesianMesh.JSON_PROPERTY_I_SIZE, - CartesianMesh.JSON_PROPERTY_SIZE_X, - CartesianMesh.JSON_PROPERTY_SIZE_Y, - CartesianMesh.JSON_PROPERTY_SIZE_Z, - CartesianMesh.JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K, - CartesianMesh.JSON_PROPERTY_OUTPUT_FIELDS, - CartesianMesh.JSON_PROPERTY_CHOMBO_MESH -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class CartesianMesh { - public static final String JSON_PROPERTY_COMPRESSED_BYTES = "compressedBytes"; - private File compressedBytes; - - public static final String JSON_PROPERTY_U_C_D_INFO = "uCDInfo"; - private UCDInfo uCDInfo; - - public static final String JSON_PROPERTY_GEOMETRY_DIMENSION = "geometryDimension"; - private Integer geometryDimension; - - public static final String JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME = "volumeRegionMapSubvolume"; - private Map volumeRegionMapSubvolume = new HashMap<>(); - - public static final String JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT = "membraneRegionMapSubvolumesInOut"; - private Map membraneRegionMapSubvolumesInOut = new HashMap<>(); - - public static final String JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS = "numMembraneElements"; - private Integer numMembraneElements; - - public static final String JSON_PROPERTY_NUM_MEMBRANE_REGIONS = "numMembraneRegions"; - private Integer numMembraneRegions; - - public static final String JSON_PROPERTY_NUM_VOLUME_ELEMENTS = "numVolumeElements"; - private Integer numVolumeElements; - - public static final String JSON_PROPERTY_NUM_VOLUME_REGIONS = "numVolumeRegions"; - private Integer numVolumeRegions; - - public static final String JSON_PROPERTY_I_SIZE = "iSize"; - private ISize iSize; - - public static final String JSON_PROPERTY_SIZE_X = "sizeX"; - private Integer sizeX; - - public static final String JSON_PROPERTY_SIZE_Y = "sizeY"; - private Integer sizeY; - - public static final String JSON_PROPERTY_SIZE_Z = "sizeZ"; - private Integer sizeZ; - - public static final String JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K = "membraneConnectivityOK"; - private Boolean membraneConnectivityOK; - - public static final String JSON_PROPERTY_OUTPUT_FIELDS = "outputFields"; - private List outputFields; - - public static final String JSON_PROPERTY_CHOMBO_MESH = "chomboMesh"; - private Boolean chomboMesh; - - public CartesianMesh() { - } - - public CartesianMesh compressedBytes(File compressedBytes) { - this.compressedBytes = compressedBytes; - return this; - } - - /** - * Get compressedBytes - * @return compressedBytes - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_COMPRESSED_BYTES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public File getCompressedBytes() { - return compressedBytes; - } - - - @JsonProperty(JSON_PROPERTY_COMPRESSED_BYTES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCompressedBytes(File compressedBytes) { - this.compressedBytes = compressedBytes; - } - - - public CartesianMesh uCDInfo(UCDInfo uCDInfo) { - this.uCDInfo = uCDInfo; - return this; - } - - /** - * Get uCDInfo - * @return uCDInfo - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_U_C_D_INFO) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public UCDInfo getuCDInfo() { - return uCDInfo; - } - - - @JsonProperty(JSON_PROPERTY_U_C_D_INFO) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setuCDInfo(UCDInfo uCDInfo) { - this.uCDInfo = uCDInfo; - } - - - public CartesianMesh geometryDimension(Integer geometryDimension) { - this.geometryDimension = geometryDimension; - return this; - } - - /** - * Get geometryDimension - * @return geometryDimension - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_GEOMETRY_DIMENSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getGeometryDimension() { - return geometryDimension; - } - - - @JsonProperty(JSON_PROPERTY_GEOMETRY_DIMENSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setGeometryDimension(Integer geometryDimension) { - this.geometryDimension = geometryDimension; - } - - - public CartesianMesh volumeRegionMapSubvolume(Map volumeRegionMapSubvolume) { - this.volumeRegionMapSubvolume = volumeRegionMapSubvolume; - return this; - } - - public CartesianMesh putVolumeRegionMapSubvolumeItem(String key, Integer volumeRegionMapSubvolumeItem) { - if (this.volumeRegionMapSubvolume == null) { - this.volumeRegionMapSubvolume = new HashMap<>(); - } - this.volumeRegionMapSubvolume.put(key, volumeRegionMapSubvolumeItem); - return this; - } - - /** - * Get volumeRegionMapSubvolume - * @return volumeRegionMapSubvolume - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Map getVolumeRegionMapSubvolume() { - return volumeRegionMapSubvolume; - } - - - @JsonProperty(JSON_PROPERTY_VOLUME_REGION_MAP_SUBVOLUME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVolumeRegionMapSubvolume(Map volumeRegionMapSubvolume) { - this.volumeRegionMapSubvolume = volumeRegionMapSubvolume; - } - - - public CartesianMesh membraneRegionMapSubvolumesInOut(Map membraneRegionMapSubvolumesInOut) { - this.membraneRegionMapSubvolumesInOut = membraneRegionMapSubvolumesInOut; - return this; - } - - public CartesianMesh putMembraneRegionMapSubvolumesInOutItem(String key, Object membraneRegionMapSubvolumesInOutItem) { - if (this.membraneRegionMapSubvolumesInOut == null) { - this.membraneRegionMapSubvolumesInOut = new HashMap<>(); - } - this.membraneRegionMapSubvolumesInOut.put(key, membraneRegionMapSubvolumesInOutItem); - return this; - } - - /** - * Get membraneRegionMapSubvolumesInOut - * @return membraneRegionMapSubvolumesInOut - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT) - @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) - - public Map getMembraneRegionMapSubvolumesInOut() { - return membraneRegionMapSubvolumesInOut; - } - - - @JsonProperty(JSON_PROPERTY_MEMBRANE_REGION_MAP_SUBVOLUMES_IN_OUT) - @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) - public void setMembraneRegionMapSubvolumesInOut(Map membraneRegionMapSubvolumesInOut) { - this.membraneRegionMapSubvolumesInOut = membraneRegionMapSubvolumesInOut; - } - - - public CartesianMesh numMembraneElements(Integer numMembraneElements) { - this.numMembraneElements = numMembraneElements; - return this; - } - - /** - * Get numMembraneElements - * @return numMembraneElements - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumMembraneElements() { - return numMembraneElements; - } - - - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_ELEMENTS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumMembraneElements(Integer numMembraneElements) { - this.numMembraneElements = numMembraneElements; - } - - - public CartesianMesh numMembraneRegions(Integer numMembraneRegions) { - this.numMembraneRegions = numMembraneRegions; - return this; - } - - /** - * Get numMembraneRegions - * @return numMembraneRegions - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_REGIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumMembraneRegions() { - return numMembraneRegions; - } - - - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_REGIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumMembraneRegions(Integer numMembraneRegions) { - this.numMembraneRegions = numMembraneRegions; - } - - - public CartesianMesh numVolumeElements(Integer numVolumeElements) { - this.numVolumeElements = numVolumeElements; - return this; - } - - /** - * Get numVolumeElements - * @return numVolumeElements - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_ELEMENTS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeElements() { - return numVolumeElements; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_ELEMENTS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeElements(Integer numVolumeElements) { - this.numVolumeElements = numVolumeElements; - } - - - public CartesianMesh numVolumeRegions(Integer numVolumeRegions) { - this.numVolumeRegions = numVolumeRegions; - return this; - } - - /** - * Get numVolumeRegions - * @return numVolumeRegions - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_REGIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeRegions() { - return numVolumeRegions; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_REGIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeRegions(Integer numVolumeRegions) { - this.numVolumeRegions = numVolumeRegions; - } - - - public CartesianMesh iSize(ISize iSize) { - this.iSize = iSize; - return this; - } - - /** - * Get iSize - * @return iSize - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_I_SIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public ISize getiSize() { - return iSize; - } - - - @JsonProperty(JSON_PROPERTY_I_SIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setiSize(ISize iSize) { - this.iSize = iSize; - } - - - public CartesianMesh sizeX(Integer sizeX) { - this.sizeX = sizeX; - return this; - } - - /** - * Get sizeX - * @return sizeX - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIZE_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getSizeX() { - return sizeX; - } - - - @JsonProperty(JSON_PROPERTY_SIZE_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSizeX(Integer sizeX) { - this.sizeX = sizeX; - } - - - public CartesianMesh sizeY(Integer sizeY) { - this.sizeY = sizeY; - return this; - } - - /** - * Get sizeY - * @return sizeY - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIZE_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getSizeY() { - return sizeY; - } - - - @JsonProperty(JSON_PROPERTY_SIZE_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSizeY(Integer sizeY) { - this.sizeY = sizeY; - } - - - public CartesianMesh sizeZ(Integer sizeZ) { - this.sizeZ = sizeZ; - return this; - } - - /** - * Get sizeZ - * @return sizeZ - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SIZE_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getSizeZ() { - return sizeZ; - } - - - @JsonProperty(JSON_PROPERTY_SIZE_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSizeZ(Integer sizeZ) { - this.sizeZ = sizeZ; - } - - - public CartesianMesh membraneConnectivityOK(Boolean membraneConnectivityOK) { - this.membraneConnectivityOK = membraneConnectivityOK; - return this; - } - - /** - * Get membraneConnectivityOK - * @return membraneConnectivityOK - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getMembraneConnectivityOK() { - return membraneConnectivityOK; - } - - - @JsonProperty(JSON_PROPERTY_MEMBRANE_CONNECTIVITY_O_K) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setMembraneConnectivityOK(Boolean membraneConnectivityOK) { - this.membraneConnectivityOK = membraneConnectivityOK; - } - - - public CartesianMesh outputFields(List outputFields) { - this.outputFields = outputFields; - return this; - } - - public CartesianMesh addOutputFieldsItem(Object outputFieldsItem) { - if (this.outputFields == null) { - this.outputFields = new ArrayList<>(); - } - this.outputFields.add(outputFieldsItem); - return this; - } - - /** - * Get outputFields - * @return outputFields - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OUTPUT_FIELDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getOutputFields() { - return outputFields; - } - - - @JsonProperty(JSON_PROPERTY_OUTPUT_FIELDS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOutputFields(List outputFields) { - this.outputFields = outputFields; - } - - - public CartesianMesh chomboMesh(Boolean chomboMesh) { - this.chomboMesh = chomboMesh; - return this; - } - - /** - * Get chomboMesh - * @return chomboMesh - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CHOMBO_MESH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getChomboMesh() { - return chomboMesh; - } - - - @JsonProperty(JSON_PROPERTY_CHOMBO_MESH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setChomboMesh(Boolean chomboMesh) { - this.chomboMesh = chomboMesh; - } - - - /** - * Return true if this CartesianMesh object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - CartesianMesh cartesianMesh = (CartesianMesh) o; - return Objects.equals(this.compressedBytes, cartesianMesh.compressedBytes) && - Objects.equals(this.uCDInfo, cartesianMesh.uCDInfo) && - Objects.equals(this.geometryDimension, cartesianMesh.geometryDimension) && - Objects.equals(this.volumeRegionMapSubvolume, cartesianMesh.volumeRegionMapSubvolume) && - Objects.equals(this.membraneRegionMapSubvolumesInOut, cartesianMesh.membraneRegionMapSubvolumesInOut) && - Objects.equals(this.numMembraneElements, cartesianMesh.numMembraneElements) && - Objects.equals(this.numMembraneRegions, cartesianMesh.numMembraneRegions) && - Objects.equals(this.numVolumeElements, cartesianMesh.numVolumeElements) && - Objects.equals(this.numVolumeRegions, cartesianMesh.numVolumeRegions) && - Objects.equals(this.iSize, cartesianMesh.iSize) && - Objects.equals(this.sizeX, cartesianMesh.sizeX) && - Objects.equals(this.sizeY, cartesianMesh.sizeY) && - Objects.equals(this.sizeZ, cartesianMesh.sizeZ) && - Objects.equals(this.membraneConnectivityOK, cartesianMesh.membraneConnectivityOK) && - Objects.equals(this.outputFields, cartesianMesh.outputFields) && - Objects.equals(this.chomboMesh, cartesianMesh.chomboMesh); - } - - @Override - public int hashCode() { - return Objects.hash(compressedBytes, uCDInfo, geometryDimension, volumeRegionMapSubvolume, membraneRegionMapSubvolumesInOut, numMembraneElements, numMembraneRegions, numVolumeElements, numVolumeRegions, iSize, sizeX, sizeY, sizeZ, membraneConnectivityOK, outputFields, chomboMesh); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class CartesianMesh {\n"); - sb.append(" compressedBytes: ").append(toIndentedString(compressedBytes)).append("\n"); - sb.append(" uCDInfo: ").append(toIndentedString(uCDInfo)).append("\n"); - sb.append(" geometryDimension: ").append(toIndentedString(geometryDimension)).append("\n"); - sb.append(" volumeRegionMapSubvolume: ").append(toIndentedString(volumeRegionMapSubvolume)).append("\n"); - sb.append(" membraneRegionMapSubvolumesInOut: ").append(toIndentedString(membraneRegionMapSubvolumesInOut)).append("\n"); - sb.append(" numMembraneElements: ").append(toIndentedString(numMembraneElements)).append("\n"); - sb.append(" numMembraneRegions: ").append(toIndentedString(numMembraneRegions)).append("\n"); - sb.append(" numVolumeElements: ").append(toIndentedString(numVolumeElements)).append("\n"); - sb.append(" numVolumeRegions: ").append(toIndentedString(numVolumeRegions)).append("\n"); - sb.append(" iSize: ").append(toIndentedString(iSize)).append("\n"); - sb.append(" sizeX: ").append(toIndentedString(sizeX)).append("\n"); - sb.append(" sizeY: ").append(toIndentedString(sizeY)).append("\n"); - sb.append(" sizeZ: ").append(toIndentedString(sizeZ)).append("\n"); - sb.append(" membraneConnectivityOK: ").append(toIndentedString(membraneConnectivityOK)).append("\n"); - sb.append(" outputFields: ").append(toIndentedString(outputFields)).append("\n"); - sb.append(" chomboMesh: ").append(toIndentedString(chomboMesh)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `compressedBytes` to the URL query string - if (getCompressedBytes() != null) { - joiner.add(String.format("%scompressedBytes%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCompressedBytes()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `uCDInfo` to the URL query string - if (getuCDInfo() != null) { - joiner.add(getuCDInfo().toUrlQueryString(prefix + "uCDInfo" + suffix)); - } - - // add `geometryDimension` to the URL query string - if (getGeometryDimension() != null) { - joiner.add(String.format("%sgeometryDimension%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getGeometryDimension()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `volumeRegionMapSubvolume` to the URL query string - if (getVolumeRegionMapSubvolume() != null) { - for (String _key : getVolumeRegionMapSubvolume().keySet()) { - joiner.add(String.format("%svolumeRegionMapSubvolume%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), - getVolumeRegionMapSubvolume().get(_key), URLEncoder.encode(String.valueOf(getVolumeRegionMapSubvolume().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `membraneRegionMapSubvolumesInOut` to the URL query string - if (getMembraneRegionMapSubvolumesInOut() != null) { - for (String _key : getMembraneRegionMapSubvolumesInOut().keySet()) { - joiner.add(String.format("%smembraneRegionMapSubvolumesInOut%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), - getMembraneRegionMapSubvolumesInOut().get(_key), URLEncoder.encode(String.valueOf(getMembraneRegionMapSubvolumesInOut().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `numMembraneElements` to the URL query string - if (getNumMembraneElements() != null) { - joiner.add(String.format("%snumMembraneElements%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneElements()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numMembraneRegions` to the URL query string - if (getNumMembraneRegions() != null) { - joiner.add(String.format("%snumMembraneRegions%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneRegions()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeElements` to the URL query string - if (getNumVolumeElements() != null) { - joiner.add(String.format("%snumVolumeElements%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeElements()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeRegions` to the URL query string - if (getNumVolumeRegions() != null) { - joiner.add(String.format("%snumVolumeRegions%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeRegions()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `iSize` to the URL query string - if (getiSize() != null) { - joiner.add(getiSize().toUrlQueryString(prefix + "iSize" + suffix)); - } - - // add `sizeX` to the URL query string - if (getSizeX() != null) { - joiner.add(String.format("%ssizeX%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `sizeY` to the URL query string - if (getSizeY() != null) { - joiner.add(String.format("%ssizeY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `sizeZ` to the URL query string - if (getSizeZ() != null) { - joiner.add(String.format("%ssizeZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSizeZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `membraneConnectivityOK` to the URL query string - if (getMembraneConnectivityOK() != null) { - joiner.add(String.format("%smembraneConnectivityOK%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getMembraneConnectivityOK()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `outputFields` to the URL query string - if (getOutputFields() != null) { - for (int i = 0; i < getOutputFields().size(); i++) { - joiner.add(String.format("%soutputFields%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getOutputFields().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `chomboMesh` to the URL query string - if (getChomboMesh() != null) { - joiner.add(String.format("%schomboMesh%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getChomboMesh()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java deleted file mode 100644 index bce1c5c840..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/Coordinate.java +++ /dev/null @@ -1,222 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * Coordinate - */ -@JsonPropertyOrder({ - Coordinate.JSON_PROPERTY_X, - Coordinate.JSON_PROPERTY_Y, - Coordinate.JSON_PROPERTY_Z -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class Coordinate { - public static final String JSON_PROPERTY_X = "x"; - private Double x; - - public static final String JSON_PROPERTY_Y = "y"; - private Double y; - - public static final String JSON_PROPERTY_Z = "z"; - private Double z; - - public Coordinate() { - } - - public Coordinate x(Double x) { - this.x = x; - return this; - } - - /** - * Get x - * @return x - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Double getX() { - return x; - } - - - @JsonProperty(JSON_PROPERTY_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setX(Double x) { - this.x = x; - } - - - public Coordinate y(Double y) { - this.y = y; - return this; - } - - /** - * Get y - * @return y - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Double getY() { - return y; - } - - - @JsonProperty(JSON_PROPERTY_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setY(Double y) { - this.y = y; - } - - - public Coordinate z(Double z) { - this.z = z; - return this; - } - - /** - * Get z - * @return z - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Double getZ() { - return z; - } - - - @JsonProperty(JSON_PROPERTY_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setZ(Double z) { - this.z = z; - } - - - /** - * Return true if this Coordinate object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Coordinate coordinate = (Coordinate) o; - return Objects.equals(this.x, coordinate.x) && - Objects.equals(this.y, coordinate.y) && - Objects.equals(this.z, coordinate.z); - } - - @Override - public int hashCode() { - return Objects.hash(x, y, z); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Coordinate {\n"); - sb.append(" x: ").append(toIndentedString(x)).append("\n"); - sb.append(" y: ").append(toIndentedString(y)).append("\n"); - sb.append(" z: ").append(toIndentedString(z)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `x` to the URL query string - if (getX() != null) { - joiner.add(String.format("%sx%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `y` to the URL query string - if (getY() != null) { - joiner.add(String.format("%sy%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `z` to the URL query string - if (getZ() != null) { - joiner.add(String.format("%sz%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java deleted file mode 100644 index e9c4a79580..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataDBOperationSpec.java +++ /dev/null @@ -1,419 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VersionableTypeVersion; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataDBOperationSpec - */ -@JsonPropertyOrder({ - FieldDataDBOperationSpec.JSON_PROPERTY_OP_TYPE, - FieldDataDBOperationSpec.JSON_PROPERTY_SPEC_E_D_I, - FieldDataDBOperationSpec.JSON_PROPERTY_OWNER, - FieldDataDBOperationSpec.JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME, - FieldDataDBOperationSpec.JSON_PROPERTY_ANNOTATION, - FieldDataDBOperationSpec.JSON_PROPERTY_SOURCE_NAMES, - FieldDataDBOperationSpec.JSON_PROPERTY_SOURCE_OWNER, - FieldDataDBOperationSpec.JSON_PROPERTY_B_INCLUDE_SIM_REFS -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataDBOperationSpec { - public static final String JSON_PROPERTY_OP_TYPE = "opType"; - private Integer opType; - - public static final String JSON_PROPERTY_SPEC_E_D_I = "specEDI"; - private ExternalDataIdentifier specEDI; - - public static final String JSON_PROPERTY_OWNER = "owner"; - private User owner; - - public static final String JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME = "newExtDataIDName"; - private String newExtDataIDName; - - public static final String JSON_PROPERTY_ANNOTATION = "annotation"; - private String annotation; - - public static final String JSON_PROPERTY_SOURCE_NAMES = "sourceNames"; - private List sourceNames; - - public static final String JSON_PROPERTY_SOURCE_OWNER = "sourceOwner"; - private VersionableTypeVersion sourceOwner; - - public static final String JSON_PROPERTY_B_INCLUDE_SIM_REFS = "bIncludeSimRefs"; - private Boolean bIncludeSimRefs; - - public FieldDataDBOperationSpec() { - } - - public FieldDataDBOperationSpec opType(Integer opType) { - this.opType = opType; - return this; - } - - /** - * Get opType - * @return opType - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OP_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getOpType() { - return opType; - } - - - @JsonProperty(JSON_PROPERTY_OP_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOpType(Integer opType) { - this.opType = opType; - } - - - public FieldDataDBOperationSpec specEDI(ExternalDataIdentifier specEDI) { - this.specEDI = specEDI; - return this; - } - - /** - * Get specEDI - * @return specEDI - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public ExternalDataIdentifier getSpecEDI() { - return specEDI; - } - - - @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSpecEDI(ExternalDataIdentifier specEDI) { - this.specEDI = specEDI; - } - - - public FieldDataDBOperationSpec owner(User owner) { - this.owner = owner; - return this; - } - - /** - * Get owner - * @return owner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public User getOwner() { - return owner; - } - - - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOwner(User owner) { - this.owner = owner; - } - - - public FieldDataDBOperationSpec newExtDataIDName(String newExtDataIDName) { - this.newExtDataIDName = newExtDataIDName; - return this; - } - - /** - * Get newExtDataIDName - * @return newExtDataIDName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getNewExtDataIDName() { - return newExtDataIDName; - } - - - @JsonProperty(JSON_PROPERTY_NEW_EXT_DATA_I_D_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNewExtDataIDName(String newExtDataIDName) { - this.newExtDataIDName = newExtDataIDName; - } - - - public FieldDataDBOperationSpec annotation(String annotation) { - this.annotation = annotation; - return this; - } - - /** - * Get annotation - * @return annotation - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ANNOTATION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getAnnotation() { - return annotation; - } - - - @JsonProperty(JSON_PROPERTY_ANNOTATION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setAnnotation(String annotation) { - this.annotation = annotation; - } - - - public FieldDataDBOperationSpec sourceNames(List sourceNames) { - this.sourceNames = sourceNames; - return this; - } - - public FieldDataDBOperationSpec addSourceNamesItem(String sourceNamesItem) { - if (this.sourceNames == null) { - this.sourceNames = new ArrayList<>(); - } - this.sourceNames.add(sourceNamesItem); - return this; - } - - /** - * Get sourceNames - * @return sourceNames - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SOURCE_NAMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getSourceNames() { - return sourceNames; - } - - - @JsonProperty(JSON_PROPERTY_SOURCE_NAMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSourceNames(List sourceNames) { - this.sourceNames = sourceNames; - } - - - public FieldDataDBOperationSpec sourceOwner(VersionableTypeVersion sourceOwner) { - this.sourceOwner = sourceOwner; - return this; - } - - /** - * Get sourceOwner - * @return sourceOwner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VersionableTypeVersion getSourceOwner() { - return sourceOwner; - } - - - @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSourceOwner(VersionableTypeVersion sourceOwner) { - this.sourceOwner = sourceOwner; - } - - - public FieldDataDBOperationSpec bIncludeSimRefs(Boolean bIncludeSimRefs) { - this.bIncludeSimRefs = bIncludeSimRefs; - return this; - } - - /** - * Get bIncludeSimRefs - * @return bIncludeSimRefs - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_B_INCLUDE_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getbIncludeSimRefs() { - return bIncludeSimRefs; - } - - - @JsonProperty(JSON_PROPERTY_B_INCLUDE_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setbIncludeSimRefs(Boolean bIncludeSimRefs) { - this.bIncludeSimRefs = bIncludeSimRefs; - } - - - /** - * Return true if this FieldDataDBOperationSpec object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataDBOperationSpec fieldDataDBOperationSpec = (FieldDataDBOperationSpec) o; - return Objects.equals(this.opType, fieldDataDBOperationSpec.opType) && - Objects.equals(this.specEDI, fieldDataDBOperationSpec.specEDI) && - Objects.equals(this.owner, fieldDataDBOperationSpec.owner) && - Objects.equals(this.newExtDataIDName, fieldDataDBOperationSpec.newExtDataIDName) && - Objects.equals(this.annotation, fieldDataDBOperationSpec.annotation) && - Objects.equals(this.sourceNames, fieldDataDBOperationSpec.sourceNames) && - Objects.equals(this.sourceOwner, fieldDataDBOperationSpec.sourceOwner) && - Objects.equals(this.bIncludeSimRefs, fieldDataDBOperationSpec.bIncludeSimRefs); - } - - @Override - public int hashCode() { - return Objects.hash(opType, specEDI, owner, newExtDataIDName, annotation, sourceNames, sourceOwner, bIncludeSimRefs); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataDBOperationSpec {\n"); - sb.append(" opType: ").append(toIndentedString(opType)).append("\n"); - sb.append(" specEDI: ").append(toIndentedString(specEDI)).append("\n"); - sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); - sb.append(" newExtDataIDName: ").append(toIndentedString(newExtDataIDName)).append("\n"); - sb.append(" annotation: ").append(toIndentedString(annotation)).append("\n"); - sb.append(" sourceNames: ").append(toIndentedString(sourceNames)).append("\n"); - sb.append(" sourceOwner: ").append(toIndentedString(sourceOwner)).append("\n"); - sb.append(" bIncludeSimRefs: ").append(toIndentedString(bIncludeSimRefs)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `opType` to the URL query string - if (getOpType() != null) { - joiner.add(String.format("%sopType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getOpType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `specEDI` to the URL query string - if (getSpecEDI() != null) { - joiner.add(getSpecEDI().toUrlQueryString(prefix + "specEDI" + suffix)); - } - - // add `owner` to the URL query string - if (getOwner() != null) { - joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); - } - - // add `newExtDataIDName` to the URL query string - if (getNewExtDataIDName() != null) { - joiner.add(String.format("%snewExtDataIDName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNewExtDataIDName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `annotation` to the URL query string - if (getAnnotation() != null) { - joiner.add(String.format("%sannotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `sourceNames` to the URL query string - if (getSourceNames() != null) { - for (int i = 0; i < getSourceNames().size(); i++) { - joiner.add(String.format("%ssourceNames%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getSourceNames().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `sourceOwner` to the URL query string - if (getSourceOwner() != null) { - joiner.add(getSourceOwner().toUrlQueryString(prefix + "sourceOwner" + suffix)); - } - - // add `bIncludeSimRefs` to the URL query string - if (getbIncludeSimRefs() != null) { - joiner.add(String.format("%sbIncludeSimRefs%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getbIncludeSimRefs()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java deleted file mode 100644 index 42edd8c78a..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataExternalDataIDs.java +++ /dev/null @@ -1,265 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataExternalDataIDs - */ -@JsonPropertyOrder({ - FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS, - FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS, - FieldDataExternalDataIDs.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataExternalDataIDs { - public static final String JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS = "externalDataIdentifiers"; - private List externalDataIdentifiers; - - public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS = "externalDataAnnotations"; - private List externalDataAnnotations; - - public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS = "externalDataIDSimRefs"; - private Map> externalDataIDSimRefs = new HashMap<>(); - - public FieldDataExternalDataIDs() { - } - - public FieldDataExternalDataIDs externalDataIdentifiers(List externalDataIdentifiers) { - this.externalDataIdentifiers = externalDataIdentifiers; - return this; - } - - public FieldDataExternalDataIDs addExternalDataIdentifiersItem(ExternalDataIdentifier externalDataIdentifiersItem) { - if (this.externalDataIdentifiers == null) { - this.externalDataIdentifiers = new ArrayList<>(); - } - this.externalDataIdentifiers.add(externalDataIdentifiersItem); - return this; - } - - /** - * Get externalDataIdentifiers - * @return externalDataIdentifiers - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getExternalDataIdentifiers() { - return externalDataIdentifiers; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataIdentifiers(List externalDataIdentifiers) { - this.externalDataIdentifiers = externalDataIdentifiers; - } - - - public FieldDataExternalDataIDs externalDataAnnotations(List externalDataAnnotations) { - this.externalDataAnnotations = externalDataAnnotations; - return this; - } - - public FieldDataExternalDataIDs addExternalDataAnnotationsItem(String externalDataAnnotationsItem) { - if (this.externalDataAnnotations == null) { - this.externalDataAnnotations = new ArrayList<>(); - } - this.externalDataAnnotations.add(externalDataAnnotationsItem); - return this; - } - - /** - * Get externalDataAnnotations - * @return externalDataAnnotations - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getExternalDataAnnotations() { - return externalDataAnnotations; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataAnnotations(List externalDataAnnotations) { - this.externalDataAnnotations = externalDataAnnotations; - } - - - public FieldDataExternalDataIDs externalDataIDSimRefs(Map> externalDataIDSimRefs) { - this.externalDataIDSimRefs = externalDataIDSimRefs; - return this; - } - - public FieldDataExternalDataIDs putExternalDataIDSimRefsItem(String key, List externalDataIDSimRefsItem) { - if (this.externalDataIDSimRefs == null) { - this.externalDataIDSimRefs = new HashMap<>(); - } - this.externalDataIDSimRefs.put(key, externalDataIDSimRefsItem); - return this; - } - - /** - * Get externalDataIDSimRefs - * @return externalDataIDSimRefs - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Map> getExternalDataIDSimRefs() { - return externalDataIDSimRefs; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataIDSimRefs(Map> externalDataIDSimRefs) { - this.externalDataIDSimRefs = externalDataIDSimRefs; - } - - - /** - * Return true if this FieldDataExternalDataIDs object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataExternalDataIDs fieldDataExternalDataIDs = (FieldDataExternalDataIDs) o; - return Objects.equals(this.externalDataIdentifiers, fieldDataExternalDataIDs.externalDataIdentifiers) && - Objects.equals(this.externalDataAnnotations, fieldDataExternalDataIDs.externalDataAnnotations) && - Objects.equals(this.externalDataIDSimRefs, fieldDataExternalDataIDs.externalDataIDSimRefs); - } - - @Override - public int hashCode() { - return Objects.hash(externalDataIdentifiers, externalDataAnnotations, externalDataIDSimRefs); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataExternalDataIDs {\n"); - sb.append(" externalDataIdentifiers: ").append(toIndentedString(externalDataIdentifiers)).append("\n"); - sb.append(" externalDataAnnotations: ").append(toIndentedString(externalDataAnnotations)).append("\n"); - sb.append(" externalDataIDSimRefs: ").append(toIndentedString(externalDataIDSimRefs)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `externalDataIdentifiers` to the URL query string - if (getExternalDataIdentifiers() != null) { - for (int i = 0; i < getExternalDataIdentifiers().size(); i++) { - if (getExternalDataIdentifiers().get(i) != null) { - joiner.add(getExternalDataIdentifiers().get(i).toUrlQueryString(String.format("%sexternalDataIdentifiers%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); - } - } - } - - // add `externalDataAnnotations` to the URL query string - if (getExternalDataAnnotations() != null) { - for (int i = 0; i < getExternalDataAnnotations().size(); i++) { - joiner.add(String.format("%sexternalDataAnnotations%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getExternalDataAnnotations().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `externalDataIDSimRefs` to the URL query string - if (getExternalDataIDSimRefs() != null) { - for (String _key : getExternalDataIDSimRefs().keySet()) { - joiner.add(String.format("%sexternalDataIDSimRefs%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), - getExternalDataIDSimRefs().get(_key), URLEncoder.encode(String.valueOf(getExternalDataIDSimRefs().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java deleted file mode 100644 index d6fc358cdb..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataFileOperationSpec.java +++ /dev/null @@ -1,801 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.CartesianMesh; -import org.vcell.restclient.model.Extent; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.KeyValue; -import org.vcell.restclient.model.Origin; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VariableType; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataFileOperationSpec - */ -@JsonPropertyOrder({ - FieldDataFileOperationSpec.JSON_PROPERTY_OP_TYPE, - FieldDataFileOperationSpec.JSON_PROPERTY_SHORT_SPEC_DATA, - FieldDataFileOperationSpec.JSON_PROPERTY_DOUBLE_SPEC_DATA, - FieldDataFileOperationSpec.JSON_PROPERTY_CARTESIAN_MESH, - FieldDataFileOperationSpec.JSON_PROPERTY_SPEC_E_D_I, - FieldDataFileOperationSpec.JSON_PROPERTY_VAR_NAMES, - FieldDataFileOperationSpec.JSON_PROPERTY_VARIABLE_TYPES, - FieldDataFileOperationSpec.JSON_PROPERTY_TIMES, - FieldDataFileOperationSpec.JSON_PROPERTY_OWNER, - FieldDataFileOperationSpec.JSON_PROPERTY_ORIGIN, - FieldDataFileOperationSpec.JSON_PROPERTY_EXTENT, - FieldDataFileOperationSpec.JSON_PROPERTY_ISIZE, - FieldDataFileOperationSpec.JSON_PROPERTY_ANNOTATION, - FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX, - FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_SIM_DATA_KEY, - FieldDataFileOperationSpec.JSON_PROPERTY_SOURCE_OWNER, - FieldDataFileOperationSpec.JSON_PROPERTY_FIELD_DATA_NAME -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataFileOperationSpec { - public static final String JSON_PROPERTY_OP_TYPE = "opType"; - private Integer opType; - - public static final String JSON_PROPERTY_SHORT_SPEC_DATA = "shortSpecData"; - private List>> shortSpecData; - - public static final String JSON_PROPERTY_DOUBLE_SPEC_DATA = "doubleSpecData"; - private List>> doubleSpecData; - - public static final String JSON_PROPERTY_CARTESIAN_MESH = "cartesianMesh"; - private CartesianMesh cartesianMesh; - - public static final String JSON_PROPERTY_SPEC_E_D_I = "specEDI"; - private ExternalDataIdentifier specEDI; - - public static final String JSON_PROPERTY_VAR_NAMES = "varNames"; - private List varNames; - - public static final String JSON_PROPERTY_VARIABLE_TYPES = "variableTypes"; - private List variableTypes; - - public static final String JSON_PROPERTY_TIMES = "times"; - private List times; - - public static final String JSON_PROPERTY_OWNER = "owner"; - private User owner; - - public static final String JSON_PROPERTY_ORIGIN = "origin"; - private Origin origin; - - public static final String JSON_PROPERTY_EXTENT = "extent"; - private Extent extent; - - public static final String JSON_PROPERTY_ISIZE = "isize"; - private ISize isize; - - public static final String JSON_PROPERTY_ANNOTATION = "annotation"; - private String annotation; - - public static final String JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX = "sourceSimParamScanJobIndex"; - private Integer sourceSimParamScanJobIndex; - - public static final String JSON_PROPERTY_SOURCE_SIM_DATA_KEY = "sourceSimDataKey"; - private KeyValue sourceSimDataKey; - - public static final String JSON_PROPERTY_SOURCE_OWNER = "sourceOwner"; - private User sourceOwner; - - public static final String JSON_PROPERTY_FIELD_DATA_NAME = "fieldDataName"; - private String fieldDataName; - - public FieldDataFileOperationSpec() { - } - - public FieldDataFileOperationSpec opType(Integer opType) { - this.opType = opType; - return this; - } - - /** - * Get opType - * @return opType - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OP_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getOpType() { - return opType; - } - - - @JsonProperty(JSON_PROPERTY_OP_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOpType(Integer opType) { - this.opType = opType; - } - - - public FieldDataFileOperationSpec shortSpecData(List>> shortSpecData) { - this.shortSpecData = shortSpecData; - return this; - } - - public FieldDataFileOperationSpec addShortSpecDataItem(List> shortSpecDataItem) { - if (this.shortSpecData == null) { - this.shortSpecData = new ArrayList<>(); - } - this.shortSpecData.add(shortSpecDataItem); - return this; - } - - /** - * Get shortSpecData - * @return shortSpecData - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List>> getShortSpecData() { - return shortSpecData; - } - - - @JsonProperty(JSON_PROPERTY_SHORT_SPEC_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setShortSpecData(List>> shortSpecData) { - this.shortSpecData = shortSpecData; - } - - - public FieldDataFileOperationSpec doubleSpecData(List>> doubleSpecData) { - this.doubleSpecData = doubleSpecData; - return this; - } - - public FieldDataFileOperationSpec addDoubleSpecDataItem(List> doubleSpecDataItem) { - if (this.doubleSpecData == null) { - this.doubleSpecData = new ArrayList<>(); - } - this.doubleSpecData.add(doubleSpecDataItem); - return this; - } - - /** - * Get doubleSpecData - * @return doubleSpecData - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_DOUBLE_SPEC_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List>> getDoubleSpecData() { - return doubleSpecData; - } - - - @JsonProperty(JSON_PROPERTY_DOUBLE_SPEC_DATA) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setDoubleSpecData(List>> doubleSpecData) { - this.doubleSpecData = doubleSpecData; - } - - - public FieldDataFileOperationSpec cartesianMesh(CartesianMesh cartesianMesh) { - this.cartesianMesh = cartesianMesh; - return this; - } - - /** - * Get cartesianMesh - * @return cartesianMesh - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CARTESIAN_MESH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public CartesianMesh getCartesianMesh() { - return cartesianMesh; - } - - - @JsonProperty(JSON_PROPERTY_CARTESIAN_MESH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCartesianMesh(CartesianMesh cartesianMesh) { - this.cartesianMesh = cartesianMesh; - } - - - public FieldDataFileOperationSpec specEDI(ExternalDataIdentifier specEDI) { - this.specEDI = specEDI; - return this; - } - - /** - * Get specEDI - * @return specEDI - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public ExternalDataIdentifier getSpecEDI() { - return specEDI; - } - - - @JsonProperty(JSON_PROPERTY_SPEC_E_D_I) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSpecEDI(ExternalDataIdentifier specEDI) { - this.specEDI = specEDI; - } - - - public FieldDataFileOperationSpec varNames(List varNames) { - this.varNames = varNames; - return this; - } - - public FieldDataFileOperationSpec addVarNamesItem(String varNamesItem) { - if (this.varNames == null) { - this.varNames = new ArrayList<>(); - } - this.varNames.add(varNamesItem); - return this; - } - - /** - * Get varNames - * @return varNames - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VAR_NAMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getVarNames() { - return varNames; - } - - - @JsonProperty(JSON_PROPERTY_VAR_NAMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVarNames(List varNames) { - this.varNames = varNames; - } - - - public FieldDataFileOperationSpec variableTypes(List variableTypes) { - this.variableTypes = variableTypes; - return this; - } - - public FieldDataFileOperationSpec addVariableTypesItem(VariableType variableTypesItem) { - if (this.variableTypes == null) { - this.variableTypes = new ArrayList<>(); - } - this.variableTypes.add(variableTypesItem); - return this; - } - - /** - * Get variableTypes - * @return variableTypes - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VARIABLE_TYPES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getVariableTypes() { - return variableTypes; - } - - - @JsonProperty(JSON_PROPERTY_VARIABLE_TYPES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVariableTypes(List variableTypes) { - this.variableTypes = variableTypes; - } - - - public FieldDataFileOperationSpec times(List times) { - this.times = times; - return this; - } - - public FieldDataFileOperationSpec addTimesItem(Double timesItem) { - if (this.times == null) { - this.times = new ArrayList<>(); - } - this.times.add(timesItem); - return this; - } - - /** - * Get times - * @return times - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TIMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getTimes() { - return times; - } - - - @JsonProperty(JSON_PROPERTY_TIMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimes(List times) { - this.times = times; - } - - - public FieldDataFileOperationSpec owner(User owner) { - this.owner = owner; - return this; - } - - /** - * Get owner - * @return owner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public User getOwner() { - return owner; - } - - - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOwner(User owner) { - this.owner = owner; - } - - - public FieldDataFileOperationSpec origin(Origin origin) { - this.origin = origin; - return this; - } - - /** - * Get origin - * @return origin - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ORIGIN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Origin getOrigin() { - return origin; - } - - - @JsonProperty(JSON_PROPERTY_ORIGIN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOrigin(Origin origin) { - this.origin = origin; - } - - - public FieldDataFileOperationSpec extent(Extent extent) { - this.extent = extent; - return this; - } - - /** - * Get extent - * @return extent - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Extent getExtent() { - return extent; - } - - - @JsonProperty(JSON_PROPERTY_EXTENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExtent(Extent extent) { - this.extent = extent; - } - - - public FieldDataFileOperationSpec isize(ISize isize) { - this.isize = isize; - return this; - } - - /** - * Get isize - * @return isize - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ISIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public ISize getIsize() { - return isize; - } - - - @JsonProperty(JSON_PROPERTY_ISIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setIsize(ISize isize) { - this.isize = isize; - } - - - public FieldDataFileOperationSpec annotation(String annotation) { - this.annotation = annotation; - return this; - } - - /** - * Get annotation - * @return annotation - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ANNOTATION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getAnnotation() { - return annotation; - } - - - @JsonProperty(JSON_PROPERTY_ANNOTATION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setAnnotation(String annotation) { - this.annotation = annotation; - } - - - public FieldDataFileOperationSpec sourceSimParamScanJobIndex(Integer sourceSimParamScanJobIndex) { - this.sourceSimParamScanJobIndex = sourceSimParamScanJobIndex; - return this; - } - - /** - * Get sourceSimParamScanJobIndex - * @return sourceSimParamScanJobIndex - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getSourceSimParamScanJobIndex() { - return sourceSimParamScanJobIndex; - } - - - @JsonProperty(JSON_PROPERTY_SOURCE_SIM_PARAM_SCAN_JOB_INDEX) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSourceSimParamScanJobIndex(Integer sourceSimParamScanJobIndex) { - this.sourceSimParamScanJobIndex = sourceSimParamScanJobIndex; - } - - - public FieldDataFileOperationSpec sourceSimDataKey(KeyValue sourceSimDataKey) { - this.sourceSimDataKey = sourceSimDataKey; - return this; - } - - /** - * Get sourceSimDataKey - * @return sourceSimDataKey - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SOURCE_SIM_DATA_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getSourceSimDataKey() { - return sourceSimDataKey; - } - - - @JsonProperty(JSON_PROPERTY_SOURCE_SIM_DATA_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSourceSimDataKey(KeyValue sourceSimDataKey) { - this.sourceSimDataKey = sourceSimDataKey; - } - - - public FieldDataFileOperationSpec sourceOwner(User sourceOwner) { - this.sourceOwner = sourceOwner; - return this; - } - - /** - * Get sourceOwner - * @return sourceOwner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public User getSourceOwner() { - return sourceOwner; - } - - - @JsonProperty(JSON_PROPERTY_SOURCE_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setSourceOwner(User sourceOwner) { - this.sourceOwner = sourceOwner; - } - - - public FieldDataFileOperationSpec fieldDataName(String fieldDataName) { - this.fieldDataName = fieldDataName; - return this; - } - - /** - * Get fieldDataName - * @return fieldDataName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getFieldDataName() { - return fieldDataName; - } - - - @JsonProperty(JSON_PROPERTY_FIELD_DATA_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFieldDataName(String fieldDataName) { - this.fieldDataName = fieldDataName; - } - - - /** - * Return true if this FieldDataFileOperationSpec object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataFileOperationSpec fieldDataFileOperationSpec = (FieldDataFileOperationSpec) o; - return Objects.equals(this.opType, fieldDataFileOperationSpec.opType) && - Objects.equals(this.shortSpecData, fieldDataFileOperationSpec.shortSpecData) && - Objects.equals(this.doubleSpecData, fieldDataFileOperationSpec.doubleSpecData) && - Objects.equals(this.cartesianMesh, fieldDataFileOperationSpec.cartesianMesh) && - Objects.equals(this.specEDI, fieldDataFileOperationSpec.specEDI) && - Objects.equals(this.varNames, fieldDataFileOperationSpec.varNames) && - Objects.equals(this.variableTypes, fieldDataFileOperationSpec.variableTypes) && - Objects.equals(this.times, fieldDataFileOperationSpec.times) && - Objects.equals(this.owner, fieldDataFileOperationSpec.owner) && - Objects.equals(this.origin, fieldDataFileOperationSpec.origin) && - Objects.equals(this.extent, fieldDataFileOperationSpec.extent) && - Objects.equals(this.isize, fieldDataFileOperationSpec.isize) && - Objects.equals(this.annotation, fieldDataFileOperationSpec.annotation) && - Objects.equals(this.sourceSimParamScanJobIndex, fieldDataFileOperationSpec.sourceSimParamScanJobIndex) && - Objects.equals(this.sourceSimDataKey, fieldDataFileOperationSpec.sourceSimDataKey) && - Objects.equals(this.sourceOwner, fieldDataFileOperationSpec.sourceOwner) && - Objects.equals(this.fieldDataName, fieldDataFileOperationSpec.fieldDataName); - } - - @Override - public int hashCode() { - return Objects.hash(opType, shortSpecData, doubleSpecData, cartesianMesh, specEDI, varNames, variableTypes, times, owner, origin, extent, isize, annotation, sourceSimParamScanJobIndex, sourceSimDataKey, sourceOwner, fieldDataName); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataFileOperationSpec {\n"); - sb.append(" opType: ").append(toIndentedString(opType)).append("\n"); - sb.append(" shortSpecData: ").append(toIndentedString(shortSpecData)).append("\n"); - sb.append(" doubleSpecData: ").append(toIndentedString(doubleSpecData)).append("\n"); - sb.append(" cartesianMesh: ").append(toIndentedString(cartesianMesh)).append("\n"); - sb.append(" specEDI: ").append(toIndentedString(specEDI)).append("\n"); - sb.append(" varNames: ").append(toIndentedString(varNames)).append("\n"); - sb.append(" variableTypes: ").append(toIndentedString(variableTypes)).append("\n"); - sb.append(" times: ").append(toIndentedString(times)).append("\n"); - sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); - sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); - sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); - sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); - sb.append(" annotation: ").append(toIndentedString(annotation)).append("\n"); - sb.append(" sourceSimParamScanJobIndex: ").append(toIndentedString(sourceSimParamScanJobIndex)).append("\n"); - sb.append(" sourceSimDataKey: ").append(toIndentedString(sourceSimDataKey)).append("\n"); - sb.append(" sourceOwner: ").append(toIndentedString(sourceOwner)).append("\n"); - sb.append(" fieldDataName: ").append(toIndentedString(fieldDataName)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `opType` to the URL query string - if (getOpType() != null) { - joiner.add(String.format("%sopType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getOpType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `shortSpecData` to the URL query string - if (getShortSpecData() != null) { - for (int i = 0; i < getShortSpecData().size(); i++) { - if (getShortSpecData().get(i) != null) { - joiner.add(String.format("%sshortSpecData%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getShortSpecData().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - } - - // add `doubleSpecData` to the URL query string - if (getDoubleSpecData() != null) { - for (int i = 0; i < getDoubleSpecData().size(); i++) { - if (getDoubleSpecData().get(i) != null) { - joiner.add(String.format("%sdoubleSpecData%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getDoubleSpecData().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - } - - // add `cartesianMesh` to the URL query string - if (getCartesianMesh() != null) { - joiner.add(getCartesianMesh().toUrlQueryString(prefix + "cartesianMesh" + suffix)); - } - - // add `specEDI` to the URL query string - if (getSpecEDI() != null) { - joiner.add(getSpecEDI().toUrlQueryString(prefix + "specEDI" + suffix)); - } - - // add `varNames` to the URL query string - if (getVarNames() != null) { - for (int i = 0; i < getVarNames().size(); i++) { - joiner.add(String.format("%svarNames%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getVarNames().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `variableTypes` to the URL query string - if (getVariableTypes() != null) { - for (int i = 0; i < getVariableTypes().size(); i++) { - if (getVariableTypes().get(i) != null) { - joiner.add(getVariableTypes().get(i).toUrlQueryString(String.format("%svariableTypes%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); - } - } - } - - // add `times` to the URL query string - if (getTimes() != null) { - for (int i = 0; i < getTimes().size(); i++) { - joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `owner` to the URL query string - if (getOwner() != null) { - joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); - } - - // add `origin` to the URL query string - if (getOrigin() != null) { - joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); - } - - // add `extent` to the URL query string - if (getExtent() != null) { - joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); - } - - // add `isize` to the URL query string - if (getIsize() != null) { - joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); - } - - // add `annotation` to the URL query string - if (getAnnotation() != null) { - joiner.add(String.format("%sannotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `sourceSimParamScanJobIndex` to the URL query string - if (getSourceSimParamScanJobIndex() != null) { - joiner.add(String.format("%ssourceSimParamScanJobIndex%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSourceSimParamScanJobIndex()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `sourceSimDataKey` to the URL query string - if (getSourceSimDataKey() != null) { - joiner.add(getSourceSimDataKey().toUrlQueryString(prefix + "sourceSimDataKey" + suffix)); - } - - // add `sourceOwner` to the URL query string - if (getSourceOwner() != null) { - joiner.add(getSourceOwner().toUrlQueryString(prefix + "sourceOwner" + suffix)); - } - - // add `fieldDataName` to the URL query string - if (getFieldDataName() != null) { - joiner.add(String.format("%sfieldDataName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getFieldDataName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java deleted file mode 100644 index e8b0c3e39a..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataInfo.java +++ /dev/null @@ -1,325 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.DataIdentifier; -import org.vcell.restclient.model.Extent; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.Origin; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataInfo - */ -@JsonPropertyOrder({ - FieldDataInfo.JSON_PROPERTY_EXTENT, - FieldDataInfo.JSON_PROPERTY_ORIGIN, - FieldDataInfo.JSON_PROPERTY_ISIZE, - FieldDataInfo.JSON_PROPERTY_DATA_IDENTIFIER, - FieldDataInfo.JSON_PROPERTY_TIMES -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataInfo { - public static final String JSON_PROPERTY_EXTENT = "extent"; - private Extent extent; - - public static final String JSON_PROPERTY_ORIGIN = "origin"; - private Origin origin; - - public static final String JSON_PROPERTY_ISIZE = "isize"; - private ISize isize; - - public static final String JSON_PROPERTY_DATA_IDENTIFIER = "dataIdentifier"; - private List dataIdentifier; - - public static final String JSON_PROPERTY_TIMES = "times"; - private List times; - - public FieldDataInfo() { - } - - public FieldDataInfo extent(Extent extent) { - this.extent = extent; - return this; - } - - /** - * Get extent - * @return extent - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Extent getExtent() { - return extent; - } - - - @JsonProperty(JSON_PROPERTY_EXTENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExtent(Extent extent) { - this.extent = extent; - } - - - public FieldDataInfo origin(Origin origin) { - this.origin = origin; - return this; - } - - /** - * Get origin - * @return origin - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ORIGIN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Origin getOrigin() { - return origin; - } - - - @JsonProperty(JSON_PROPERTY_ORIGIN) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOrigin(Origin origin) { - this.origin = origin; - } - - - public FieldDataInfo isize(ISize isize) { - this.isize = isize; - return this; - } - - /** - * Get isize - * @return isize - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ISIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public ISize getIsize() { - return isize; - } - - - @JsonProperty(JSON_PROPERTY_ISIZE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setIsize(ISize isize) { - this.isize = isize; - } - - - public FieldDataInfo dataIdentifier(List dataIdentifier) { - this.dataIdentifier = dataIdentifier; - return this; - } - - public FieldDataInfo addDataIdentifierItem(DataIdentifier dataIdentifierItem) { - if (this.dataIdentifier == null) { - this.dataIdentifier = new ArrayList<>(); - } - this.dataIdentifier.add(dataIdentifierItem); - return this; - } - - /** - * Get dataIdentifier - * @return dataIdentifier - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getDataIdentifier() { - return dataIdentifier; - } - - - @JsonProperty(JSON_PROPERTY_DATA_IDENTIFIER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setDataIdentifier(List dataIdentifier) { - this.dataIdentifier = dataIdentifier; - } - - - public FieldDataInfo times(List times) { - this.times = times; - return this; - } - - public FieldDataInfo addTimesItem(Double timesItem) { - if (this.times == null) { - this.times = new ArrayList<>(); - } - this.times.add(timesItem); - return this; - } - - /** - * Get times - * @return times - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TIMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getTimes() { - return times; - } - - - @JsonProperty(JSON_PROPERTY_TIMES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimes(List times) { - this.times = times; - } - - - /** - * Return true if this FieldDataInfo object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataInfo fieldDataInfo = (FieldDataInfo) o; - return Objects.equals(this.extent, fieldDataInfo.extent) && - Objects.equals(this.origin, fieldDataInfo.origin) && - Objects.equals(this.isize, fieldDataInfo.isize) && - Objects.equals(this.dataIdentifier, fieldDataInfo.dataIdentifier) && - Objects.equals(this.times, fieldDataInfo.times); - } - - @Override - public int hashCode() { - return Objects.hash(extent, origin, isize, dataIdentifier, times); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataInfo {\n"); - sb.append(" extent: ").append(toIndentedString(extent)).append("\n"); - sb.append(" origin: ").append(toIndentedString(origin)).append("\n"); - sb.append(" isize: ").append(toIndentedString(isize)).append("\n"); - sb.append(" dataIdentifier: ").append(toIndentedString(dataIdentifier)).append("\n"); - sb.append(" times: ").append(toIndentedString(times)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `extent` to the URL query string - if (getExtent() != null) { - joiner.add(getExtent().toUrlQueryString(prefix + "extent" + suffix)); - } - - // add `origin` to the URL query string - if (getOrigin() != null) { - joiner.add(getOrigin().toUrlQueryString(prefix + "origin" + suffix)); - } - - // add `isize` to the URL query string - if (getIsize() != null) { - joiner.add(getIsize().toUrlQueryString(prefix + "isize" + suffix)); - } - - // add `dataIdentifier` to the URL query string - if (getDataIdentifier() != null) { - for (int i = 0; i < getDataIdentifier().size(); i++) { - if (getDataIdentifier().get(i) != null) { - joiner.add(getDataIdentifier().get(i).toUrlQueryString(String.format("%sdataIdentifier%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); - } - } - } - - // add `times` to the URL query string - if (getTimes() != null) { - for (int i = 0; i < getTimes().size(); i++) { - joiner.add(String.format("%stimes%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getTimes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java deleted file mode 100644 index 3cdad94c8f..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataNoCopyConflict.java +++ /dev/null @@ -1,216 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataNoCopyConflict - */ -@JsonPropertyOrder({ - FieldDataNoCopyConflict.JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH, - FieldDataNoCopyConflict.JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataNoCopyConflict { - public static final String JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH = "oldNameNewIDHash"; - private Map oldNameNewIDHash = new HashMap<>(); - - public static final String JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH = "oldNameOldExtDataIDKeyHash"; - private Map oldNameOldExtDataIDKeyHash = new HashMap<>(); - - public FieldDataNoCopyConflict() { - } - - public FieldDataNoCopyConflict oldNameNewIDHash(Map oldNameNewIDHash) { - this.oldNameNewIDHash = oldNameNewIDHash; - return this; - } - - public FieldDataNoCopyConflict putOldNameNewIDHashItem(String key, ExternalDataIdentifier oldNameNewIDHashItem) { - if (this.oldNameNewIDHash == null) { - this.oldNameNewIDHash = new HashMap<>(); - } - this.oldNameNewIDHash.put(key, oldNameNewIDHashItem); - return this; - } - - /** - * Get oldNameNewIDHash - * @return oldNameNewIDHash - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Map getOldNameNewIDHash() { - return oldNameNewIDHash; - } - - - @JsonProperty(JSON_PROPERTY_OLD_NAME_NEW_I_D_HASH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOldNameNewIDHash(Map oldNameNewIDHash) { - this.oldNameNewIDHash = oldNameNewIDHash; - } - - - public FieldDataNoCopyConflict oldNameOldExtDataIDKeyHash(Map oldNameOldExtDataIDKeyHash) { - this.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKeyHash; - return this; - } - - public FieldDataNoCopyConflict putOldNameOldExtDataIDKeyHashItem(String key, KeyValue oldNameOldExtDataIDKeyHashItem) { - if (this.oldNameOldExtDataIDKeyHash == null) { - this.oldNameOldExtDataIDKeyHash = new HashMap<>(); - } - this.oldNameOldExtDataIDKeyHash.put(key, oldNameOldExtDataIDKeyHashItem); - return this; - } - - /** - * Get oldNameOldExtDataIDKeyHash - * @return oldNameOldExtDataIDKeyHash - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Map getOldNameOldExtDataIDKeyHash() { - return oldNameOldExtDataIDKeyHash; - } - - - @JsonProperty(JSON_PROPERTY_OLD_NAME_OLD_EXT_DATA_I_D_KEY_HASH) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOldNameOldExtDataIDKeyHash(Map oldNameOldExtDataIDKeyHash) { - this.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKeyHash; - } - - - /** - * Return true if this FieldDataNoCopyConflict object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataNoCopyConflict fieldDataNoCopyConflict = (FieldDataNoCopyConflict) o; - return Objects.equals(this.oldNameNewIDHash, fieldDataNoCopyConflict.oldNameNewIDHash) && - Objects.equals(this.oldNameOldExtDataIDKeyHash, fieldDataNoCopyConflict.oldNameOldExtDataIDKeyHash); - } - - @Override - public int hashCode() { - return Objects.hash(oldNameNewIDHash, oldNameOldExtDataIDKeyHash); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataNoCopyConflict {\n"); - sb.append(" oldNameNewIDHash: ").append(toIndentedString(oldNameNewIDHash)).append("\n"); - sb.append(" oldNameOldExtDataIDKeyHash: ").append(toIndentedString(oldNameOldExtDataIDKeyHash)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `oldNameNewIDHash` to the URL query string - if (getOldNameNewIDHash() != null) { - for (String _key : getOldNameNewIDHash().keySet()) { - if (getOldNameNewIDHash().get(_key) != null) { - joiner.add(getOldNameNewIDHash().get(_key).toUrlQueryString(String.format("%soldNameNewIDHash%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix)))); - } - } - } - - // add `oldNameOldExtDataIDKeyHash` to the URL query string - if (getOldNameOldExtDataIDKeyHash() != null) { - for (String _key : getOldNameOldExtDataIDKeyHash().keySet()) { - if (getOldNameOldExtDataIDKeyHash().get(_key) != null) { - joiner.add(getOldNameOldExtDataIDKeyHash().get(_key).toUrlQueryString(String.format("%soldNameOldExtDataIDKeyHash%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix)))); - } - } - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java deleted file mode 100644 index 57f2df6b54..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReferences.java +++ /dev/null @@ -1,265 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * FieldDataReferences - */ -@JsonPropertyOrder({ - FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS, - FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS, - FieldDataReferences.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class FieldDataReferences { - public static final String JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS = "externalDataIdentifiers"; - private List externalDataIdentifiers; - - public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS = "externalDataAnnotations"; - private List externalDataAnnotations; - - public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS = "externalDataIDSimRefs"; - private Map> externalDataIDSimRefs = new HashMap<>(); - - public FieldDataReferences() { - } - - public FieldDataReferences externalDataIdentifiers(List externalDataIdentifiers) { - this.externalDataIdentifiers = externalDataIdentifiers; - return this; - } - - public FieldDataReferences addExternalDataIdentifiersItem(ExternalDataIdentifier externalDataIdentifiersItem) { - if (this.externalDataIdentifiers == null) { - this.externalDataIdentifiers = new ArrayList<>(); - } - this.externalDataIdentifiers.add(externalDataIdentifiersItem); - return this; - } - - /** - * Get externalDataIdentifiers - * @return externalDataIdentifiers - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getExternalDataIdentifiers() { - return externalDataIdentifiers; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIERS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataIdentifiers(List externalDataIdentifiers) { - this.externalDataIdentifiers = externalDataIdentifiers; - } - - - public FieldDataReferences externalDataAnnotations(List externalDataAnnotations) { - this.externalDataAnnotations = externalDataAnnotations; - return this; - } - - public FieldDataReferences addExternalDataAnnotationsItem(String externalDataAnnotationsItem) { - if (this.externalDataAnnotations == null) { - this.externalDataAnnotations = new ArrayList<>(); - } - this.externalDataAnnotations.add(externalDataAnnotationsItem); - return this; - } - - /** - * Get externalDataAnnotations - * @return externalDataAnnotations - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getExternalDataAnnotations() { - return externalDataAnnotations; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_ANNOTATIONS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataAnnotations(List externalDataAnnotations) { - this.externalDataAnnotations = externalDataAnnotations; - } - - - public FieldDataReferences externalDataIDSimRefs(Map> externalDataIDSimRefs) { - this.externalDataIDSimRefs = externalDataIDSimRefs; - return this; - } - - public FieldDataReferences putExternalDataIDSimRefsItem(String key, List externalDataIDSimRefsItem) { - if (this.externalDataIDSimRefs == null) { - this.externalDataIDSimRefs = new HashMap<>(); - } - this.externalDataIDSimRefs.put(key, externalDataIDSimRefsItem); - return this; - } - - /** - * Get externalDataIDSimRefs - * @return externalDataIDSimRefs - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Map> getExternalDataIDSimRefs() { - return externalDataIDSimRefs; - } - - - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataIDSimRefs(Map> externalDataIDSimRefs) { - this.externalDataIDSimRefs = externalDataIDSimRefs; - } - - - /** - * Return true if this FieldDataReferences object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - FieldDataReferences fieldDataReferences = (FieldDataReferences) o; - return Objects.equals(this.externalDataIdentifiers, fieldDataReferences.externalDataIdentifiers) && - Objects.equals(this.externalDataAnnotations, fieldDataReferences.externalDataAnnotations) && - Objects.equals(this.externalDataIDSimRefs, fieldDataReferences.externalDataIDSimRefs); - } - - @Override - public int hashCode() { - return Objects.hash(externalDataIdentifiers, externalDataAnnotations, externalDataIDSimRefs); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class FieldDataReferences {\n"); - sb.append(" externalDataIdentifiers: ").append(toIndentedString(externalDataIdentifiers)).append("\n"); - sb.append(" externalDataAnnotations: ").append(toIndentedString(externalDataAnnotations)).append("\n"); - sb.append(" externalDataIDSimRefs: ").append(toIndentedString(externalDataIDSimRefs)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `externalDataIdentifiers` to the URL query string - if (getExternalDataIdentifiers() != null) { - for (int i = 0; i < getExternalDataIdentifiers().size(); i++) { - if (getExternalDataIdentifiers().get(i) != null) { - joiner.add(getExternalDataIdentifiers().get(i).toUrlQueryString(String.format("%sexternalDataIdentifiers%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); - } - } - } - - // add `externalDataAnnotations` to the URL query string - if (getExternalDataAnnotations() != null) { - for (int i = 0; i < getExternalDataAnnotations().size(); i++) { - joiner.add(String.format("%sexternalDataAnnotations%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getExternalDataAnnotations().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `externalDataIDSimRefs` to the URL query string - if (getExternalDataIDSimRefs() != null) { - for (String _key : getExternalDataIDSimRefs().keySet()) { - joiner.add(String.format("%sexternalDataIDSimRefs%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix), - getExternalDataIDSimRefs().get(_key), URLEncoder.encode(String.valueOf(getExternalDataIDSimRefs().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java deleted file mode 100644 index 4421ad8758..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/GroupAccess.java +++ /dev/null @@ -1,187 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.math.BigDecimal; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * GroupAccess - */ -@JsonPropertyOrder({ - GroupAccess.JSON_PROPERTY_GROUPID, - GroupAccess.JSON_PROPERTY_DESCRIPTION -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class GroupAccess { - public static final String JSON_PROPERTY_GROUPID = "groupid"; - private BigDecimal groupid; - - public static final String JSON_PROPERTY_DESCRIPTION = "description"; - private String description; - - public GroupAccess() { - } - - public GroupAccess groupid(BigDecimal groupid) { - this.groupid = groupid; - return this; - } - - /** - * Get groupid - * @return groupid - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_GROUPID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public BigDecimal getGroupid() { - return groupid; - } - - - @JsonProperty(JSON_PROPERTY_GROUPID) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setGroupid(BigDecimal groupid) { - this.groupid = groupid; - } - - - public GroupAccess description(String description) { - this.description = description; - return this; - } - - /** - * Get description - * @return description - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_DESCRIPTION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getDescription() { - return description; - } - - - @JsonProperty(JSON_PROPERTY_DESCRIPTION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setDescription(String description) { - this.description = description; - } - - - /** - * Return true if this GroupAccess object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - GroupAccess groupAccess = (GroupAccess) o; - return Objects.equals(this.groupid, groupAccess.groupid) && - Objects.equals(this.description, groupAccess.description); - } - - @Override - public int hashCode() { - return Objects.hash(groupid, description); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class GroupAccess {\n"); - sb.append(" groupid: ").append(toIndentedString(groupid)).append("\n"); - sb.append(" description: ").append(toIndentedString(description)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `groupid` to the URL query string - if (getGroupid() != null) { - joiner.add(String.format("%sgroupid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getGroupid()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `description` to the URL query string - if (getDescription() != null) { - joiner.add(String.format("%sdescription%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDescription()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java deleted file mode 100644 index 1e5b76abbc..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/UCDInfo.java +++ /dev/null @@ -1,614 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.Coordinate; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * UCDInfo - */ -@JsonPropertyOrder({ - UCDInfo.JSON_PROPERTY_UCD_GRID_NODES, - UCDInfo.JSON_PROPERTY_UCD_MEMBRANE_QUADS, - UCDInfo.JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V, - UCDInfo.JSON_PROPERTY_U_C_D_GRID_NODES, - UCDInfo.JSON_PROPERTY_U_C_D_MEMBRANE_QUADS, - UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_X, - UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_Y, - UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_Z, - UCDInfo.JSON_PROPERTY_NUM_POINTS_X_Y_Z, - UCDInfo.JSON_PROPERTY_NUM_VOLUME_NODES_X_Y, - UCDInfo.JSON_PROPERTY_NUM_VOLUME_CELLS, - UCDInfo.JSON_PROPERTY_NUM_MEMBRANE_CELLS -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class UCDInfo { - public static final String JSON_PROPERTY_UCD_GRID_NODES = "ucdGridNodes"; - private List>> ucdGridNodes; - - public static final String JSON_PROPERTY_UCD_MEMBRANE_QUADS = "ucdMembraneQuads"; - private List> ucdMembraneQuads; - - public static final String JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V = "reducedUCDGridNodesV"; - private List reducedUCDGridNodesV; - - public static final String JSON_PROPERTY_U_C_D_GRID_NODES = "uCDGridNodes"; - private List>> uCDGridNodes; - - public static final String JSON_PROPERTY_U_C_D_MEMBRANE_QUADS = "uCDMembraneQuads"; - private List> uCDMembraneQuads; - - public static final String JSON_PROPERTY_NUM_VOLUME_NODES_X = "numVolumeNodesX"; - private Integer numVolumeNodesX; - - public static final String JSON_PROPERTY_NUM_VOLUME_NODES_Y = "numVolumeNodesY"; - private Integer numVolumeNodesY; - - public static final String JSON_PROPERTY_NUM_VOLUME_NODES_Z = "numVolumeNodesZ"; - private Integer numVolumeNodesZ; - - public static final String JSON_PROPERTY_NUM_POINTS_X_Y_Z = "numPointsXYZ"; - private Integer numPointsXYZ; - - public static final String JSON_PROPERTY_NUM_VOLUME_NODES_X_Y = "numVolumeNodesXY"; - private Integer numVolumeNodesXY; - - public static final String JSON_PROPERTY_NUM_VOLUME_CELLS = "numVolumeCells"; - private Integer numVolumeCells; - - public static final String JSON_PROPERTY_NUM_MEMBRANE_CELLS = "numMembraneCells"; - private Integer numMembraneCells; - - public UCDInfo() { - } - - public UCDInfo ucdGridNodes(List>> ucdGridNodes) { - this.ucdGridNodes = ucdGridNodes; - return this; - } - - public UCDInfo addUcdGridNodesItem(List> ucdGridNodesItem) { - if (this.ucdGridNodes == null) { - this.ucdGridNodes = new ArrayList<>(); - } - this.ucdGridNodes.add(ucdGridNodesItem); - return this; - } - - /** - * Get ucdGridNodes - * @return ucdGridNodes - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_UCD_GRID_NODES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List>> getUcdGridNodes() { - return ucdGridNodes; - } - - - @JsonProperty(JSON_PROPERTY_UCD_GRID_NODES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUcdGridNodes(List>> ucdGridNodes) { - this.ucdGridNodes = ucdGridNodes; - } - - - public UCDInfo ucdMembraneQuads(List> ucdMembraneQuads) { - this.ucdMembraneQuads = ucdMembraneQuads; - return this; - } - - public UCDInfo addUcdMembraneQuadsItem(List ucdMembraneQuadsItem) { - if (this.ucdMembraneQuads == null) { - this.ucdMembraneQuads = new ArrayList<>(); - } - this.ucdMembraneQuads.add(ucdMembraneQuadsItem); - return this; - } - - /** - * Get ucdMembraneQuads - * @return ucdMembraneQuads - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_UCD_MEMBRANE_QUADS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List> getUcdMembraneQuads() { - return ucdMembraneQuads; - } - - - @JsonProperty(JSON_PROPERTY_UCD_MEMBRANE_QUADS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setUcdMembraneQuads(List> ucdMembraneQuads) { - this.ucdMembraneQuads = ucdMembraneQuads; - } - - - public UCDInfo reducedUCDGridNodesV(List reducedUCDGridNodesV) { - this.reducedUCDGridNodesV = reducedUCDGridNodesV; - return this; - } - - public UCDInfo addReducedUCDGridNodesVItem(Coordinate reducedUCDGridNodesVItem) { - if (this.reducedUCDGridNodesV == null) { - this.reducedUCDGridNodesV = new ArrayList<>(); - } - this.reducedUCDGridNodesV.add(reducedUCDGridNodesVItem); - return this; - } - - /** - * Get reducedUCDGridNodesV - * @return reducedUCDGridNodesV - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List getReducedUCDGridNodesV() { - return reducedUCDGridNodesV; - } - - - @JsonProperty(JSON_PROPERTY_REDUCED_U_C_D_GRID_NODES_V) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setReducedUCDGridNodesV(List reducedUCDGridNodesV) { - this.reducedUCDGridNodesV = reducedUCDGridNodesV; - } - - - public UCDInfo uCDGridNodes(List>> uCDGridNodes) { - this.uCDGridNodes = uCDGridNodes; - return this; - } - - public UCDInfo addUCDGridNodesItem(List> uCDGridNodesItem) { - if (this.uCDGridNodes == null) { - this.uCDGridNodes = new ArrayList<>(); - } - this.uCDGridNodes.add(uCDGridNodesItem); - return this; - } - - /** - * Get uCDGridNodes - * @return uCDGridNodes - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_U_C_D_GRID_NODES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List>> getuCDGridNodes() { - return uCDGridNodes; - } - - - @JsonProperty(JSON_PROPERTY_U_C_D_GRID_NODES) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setuCDGridNodes(List>> uCDGridNodes) { - this.uCDGridNodes = uCDGridNodes; - } - - - public UCDInfo uCDMembraneQuads(List> uCDMembraneQuads) { - this.uCDMembraneQuads = uCDMembraneQuads; - return this; - } - - public UCDInfo addUCDMembraneQuadsItem(List uCDMembraneQuadsItem) { - if (this.uCDMembraneQuads == null) { - this.uCDMembraneQuads = new ArrayList<>(); - } - this.uCDMembraneQuads.add(uCDMembraneQuadsItem); - return this; - } - - /** - * Get uCDMembraneQuads - * @return uCDMembraneQuads - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_U_C_D_MEMBRANE_QUADS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public List> getuCDMembraneQuads() { - return uCDMembraneQuads; - } - - - @JsonProperty(JSON_PROPERTY_U_C_D_MEMBRANE_QUADS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setuCDMembraneQuads(List> uCDMembraneQuads) { - this.uCDMembraneQuads = uCDMembraneQuads; - } - - - public UCDInfo numVolumeNodesX(Integer numVolumeNodesX) { - this.numVolumeNodesX = numVolumeNodesX; - return this; - } - - /** - * Get numVolumeNodesX - * @return numVolumeNodesX - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeNodesX() { - return numVolumeNodesX; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeNodesX(Integer numVolumeNodesX) { - this.numVolumeNodesX = numVolumeNodesX; - } - - - public UCDInfo numVolumeNodesY(Integer numVolumeNodesY) { - this.numVolumeNodesY = numVolumeNodesY; - return this; - } - - /** - * Get numVolumeNodesY - * @return numVolumeNodesY - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeNodesY() { - return numVolumeNodesY; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeNodesY(Integer numVolumeNodesY) { - this.numVolumeNodesY = numVolumeNodesY; - } - - - public UCDInfo numVolumeNodesZ(Integer numVolumeNodesZ) { - this.numVolumeNodesZ = numVolumeNodesZ; - return this; - } - - /** - * Get numVolumeNodesZ - * @return numVolumeNodesZ - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeNodesZ() { - return numVolumeNodesZ; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeNodesZ(Integer numVolumeNodesZ) { - this.numVolumeNodesZ = numVolumeNodesZ; - } - - - public UCDInfo numPointsXYZ(Integer numPointsXYZ) { - this.numPointsXYZ = numPointsXYZ; - return this; - } - - /** - * Get numPointsXYZ - * @return numPointsXYZ - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_POINTS_X_Y_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumPointsXYZ() { - return numPointsXYZ; - } - - - @JsonProperty(JSON_PROPERTY_NUM_POINTS_X_Y_Z) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumPointsXYZ(Integer numPointsXYZ) { - this.numPointsXYZ = numPointsXYZ; - } - - - public UCDInfo numVolumeNodesXY(Integer numVolumeNodesXY) { - this.numVolumeNodesXY = numVolumeNodesXY; - return this; - } - - /** - * Get numVolumeNodesXY - * @return numVolumeNodesXY - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeNodesXY() { - return numVolumeNodesXY; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_NODES_X_Y) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeNodesXY(Integer numVolumeNodesXY) { - this.numVolumeNodesXY = numVolumeNodesXY; - } - - - public UCDInfo numVolumeCells(Integer numVolumeCells) { - this.numVolumeCells = numVolumeCells; - return this; - } - - /** - * Get numVolumeCells - * @return numVolumeCells - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_CELLS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumVolumeCells() { - return numVolumeCells; - } - - - @JsonProperty(JSON_PROPERTY_NUM_VOLUME_CELLS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumVolumeCells(Integer numVolumeCells) { - this.numVolumeCells = numVolumeCells; - } - - - public UCDInfo numMembraneCells(Integer numMembraneCells) { - this.numMembraneCells = numMembraneCells; - return this; - } - - /** - * Get numMembraneCells - * @return numMembraneCells - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_CELLS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getNumMembraneCells() { - return numMembraneCells; - } - - - @JsonProperty(JSON_PROPERTY_NUM_MEMBRANE_CELLS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setNumMembraneCells(Integer numMembraneCells) { - this.numMembraneCells = numMembraneCells; - } - - - /** - * Return true if this UCDInfo object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - UCDInfo ucDInfo = (UCDInfo) o; - return Objects.equals(this.ucdGridNodes, ucDInfo.ucdGridNodes) && - Objects.equals(this.ucdMembraneQuads, ucDInfo.ucdMembraneQuads) && - Objects.equals(this.reducedUCDGridNodesV, ucDInfo.reducedUCDGridNodesV) && - Objects.equals(this.uCDGridNodes, ucDInfo.uCDGridNodes) && - Objects.equals(this.uCDMembraneQuads, ucDInfo.uCDMembraneQuads) && - Objects.equals(this.numVolumeNodesX, ucDInfo.numVolumeNodesX) && - Objects.equals(this.numVolumeNodesY, ucDInfo.numVolumeNodesY) && - Objects.equals(this.numVolumeNodesZ, ucDInfo.numVolumeNodesZ) && - Objects.equals(this.numPointsXYZ, ucDInfo.numPointsXYZ) && - Objects.equals(this.numVolumeNodesXY, ucDInfo.numVolumeNodesXY) && - Objects.equals(this.numVolumeCells, ucDInfo.numVolumeCells) && - Objects.equals(this.numMembraneCells, ucDInfo.numMembraneCells); - } - - @Override - public int hashCode() { - return Objects.hash(ucdGridNodes, ucdMembraneQuads, reducedUCDGridNodesV, uCDGridNodes, uCDMembraneQuads, numVolumeNodesX, numVolumeNodesY, numVolumeNodesZ, numPointsXYZ, numVolumeNodesXY, numVolumeCells, numMembraneCells); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class UCDInfo {\n"); - sb.append(" ucdGridNodes: ").append(toIndentedString(ucdGridNodes)).append("\n"); - sb.append(" ucdMembraneQuads: ").append(toIndentedString(ucdMembraneQuads)).append("\n"); - sb.append(" reducedUCDGridNodesV: ").append(toIndentedString(reducedUCDGridNodesV)).append("\n"); - sb.append(" uCDGridNodes: ").append(toIndentedString(uCDGridNodes)).append("\n"); - sb.append(" uCDMembraneQuads: ").append(toIndentedString(uCDMembraneQuads)).append("\n"); - sb.append(" numVolumeNodesX: ").append(toIndentedString(numVolumeNodesX)).append("\n"); - sb.append(" numVolumeNodesY: ").append(toIndentedString(numVolumeNodesY)).append("\n"); - sb.append(" numVolumeNodesZ: ").append(toIndentedString(numVolumeNodesZ)).append("\n"); - sb.append(" numPointsXYZ: ").append(toIndentedString(numPointsXYZ)).append("\n"); - sb.append(" numVolumeNodesXY: ").append(toIndentedString(numVolumeNodesXY)).append("\n"); - sb.append(" numVolumeCells: ").append(toIndentedString(numVolumeCells)).append("\n"); - sb.append(" numMembraneCells: ").append(toIndentedString(numMembraneCells)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `ucdGridNodes` to the URL query string - if (getUcdGridNodes() != null) { - for (int i = 0; i < getUcdGridNodes().size(); i++) { - if (getUcdGridNodes().get(i) != null) { - joiner.add(String.format("%sucdGridNodes%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getUcdGridNodes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - } - - // add `ucdMembraneQuads` to the URL query string - if (getUcdMembraneQuads() != null) { - for (int i = 0; i < getUcdMembraneQuads().size(); i++) { - joiner.add(String.format("%sucdMembraneQuads%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getUcdMembraneQuads().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `reducedUCDGridNodesV` to the URL query string - if (getReducedUCDGridNodesV() != null) { - for (int i = 0; i < getReducedUCDGridNodesV().size(); i++) { - if (getReducedUCDGridNodesV().get(i) != null) { - joiner.add(getReducedUCDGridNodesV().get(i).toUrlQueryString(String.format("%sreducedUCDGridNodesV%s%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); - } - } - } - - // add `uCDGridNodes` to the URL query string - if (getuCDGridNodes() != null) { - for (int i = 0; i < getuCDGridNodes().size(); i++) { - if (getuCDGridNodes().get(i) != null) { - joiner.add(String.format("%suCDGridNodes%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getuCDGridNodes().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - } - - // add `uCDMembraneQuads` to the URL query string - if (getuCDMembraneQuads() != null) { - for (int i = 0; i < getuCDMembraneQuads().size(); i++) { - joiner.add(String.format("%suCDMembraneQuads%s%s=%s", prefix, suffix, - "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix), - URLEncoder.encode(String.valueOf(getuCDMembraneQuads().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - } - - // add `numVolumeNodesX` to the URL query string - if (getNumVolumeNodesX() != null) { - joiner.add(String.format("%snumVolumeNodesX%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesX()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeNodesY` to the URL query string - if (getNumVolumeNodesY() != null) { - joiner.add(String.format("%snumVolumeNodesY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeNodesZ` to the URL query string - if (getNumVolumeNodesZ() != null) { - joiner.add(String.format("%snumVolumeNodesZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numPointsXYZ` to the URL query string - if (getNumPointsXYZ() != null) { - joiner.add(String.format("%snumPointsXYZ%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumPointsXYZ()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeNodesXY` to the URL query string - if (getNumVolumeNodesXY() != null) { - joiner.add(String.format("%snumVolumeNodesXY%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeNodesXY()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numVolumeCells` to the URL query string - if (getNumVolumeCells() != null) { - joiner.add(String.format("%snumVolumeCells%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumVolumeCells()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `numMembraneCells` to the URL query string - if (getNumMembraneCells() != null) { - joiner.add(String.format("%snumMembraneCells%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getNumMembraneCells()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java deleted file mode 100644 index b52667afc5..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/Version.java +++ /dev/null @@ -1,732 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.math.BigDecimal; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.GroupAccess; -import org.vcell.restclient.model.KeyValue; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VersionFlag; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * Version - */ -@JsonPropertyOrder({ - Version.JSON_PROPERTY_VERSION_KEY, - Version.JSON_PROPERTY_VERSION_NAME, - Version.JSON_PROPERTY_VERSION_OWNER, - Version.JSON_PROPERTY_VERSION_GROUP_ACCESS, - Version.JSON_PROPERTY_VERSION_BRANCH_POINT_REF, - Version.JSON_PROPERTY_VERSION_BRANCH_I_D, - Version.JSON_PROPERTY_VERSION_DATE, - Version.JSON_PROPERTY_VERSION_FLAG, - Version.JSON_PROPERTY_VERSION_ANNOT, - Version.JSON_PROPERTY_ANNOT, - Version.JSON_PROPERTY_BRANCH_I_D, - Version.JSON_PROPERTY_BRANCH_POINT_REF_KEY, - Version.JSON_PROPERTY_DATE, - Version.JSON_PROPERTY_FLAG, - Version.JSON_PROPERTY_GROUP_ACCESS, - Version.JSON_PROPERTY_NAME, - Version.JSON_PROPERTY_OWNER -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class Version { - public static final String JSON_PROPERTY_VERSION_KEY = "versionKey"; - private KeyValue versionKey; - - public static final String JSON_PROPERTY_VERSION_NAME = "versionName"; - private String versionName; - - public static final String JSON_PROPERTY_VERSION_OWNER = "versionOwner"; - private User versionOwner; - - public static final String JSON_PROPERTY_VERSION_GROUP_ACCESS = "versionGroupAccess"; - private GroupAccess versionGroupAccess; - - public static final String JSON_PROPERTY_VERSION_BRANCH_POINT_REF = "versionBranchPointRef"; - private KeyValue versionBranchPointRef; - - public static final String JSON_PROPERTY_VERSION_BRANCH_I_D = "versionBranchID"; - private BigDecimal versionBranchID; - - public static final String JSON_PROPERTY_VERSION_DATE = "versionDate"; - private LocalDate versionDate; - - public static final String JSON_PROPERTY_VERSION_FLAG = "versionFlag"; - private VersionFlag versionFlag; - - public static final String JSON_PROPERTY_VERSION_ANNOT = "versionAnnot"; - private String versionAnnot; - - public static final String JSON_PROPERTY_ANNOT = "annot"; - private String annot; - - public static final String JSON_PROPERTY_BRANCH_I_D = "branchID"; - private BigDecimal branchID; - - public static final String JSON_PROPERTY_BRANCH_POINT_REF_KEY = "branchPointRefKey"; - private KeyValue branchPointRefKey; - - public static final String JSON_PROPERTY_DATE = "date"; - private LocalDate date; - - public static final String JSON_PROPERTY_FLAG = "flag"; - private VersionFlag flag; - - public static final String JSON_PROPERTY_GROUP_ACCESS = "groupAccess"; - private GroupAccess groupAccess; - - public static final String JSON_PROPERTY_NAME = "name"; - private String name; - - public static final String JSON_PROPERTY_OWNER = "owner"; - private User owner; - - public Version() { - } - - public Version versionKey(KeyValue versionKey) { - this.versionKey = versionKey; - return this; - } - - /** - * Get versionKey - * @return versionKey - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getVersionKey() { - return versionKey; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionKey(KeyValue versionKey) { - this.versionKey = versionKey; - } - - - public Version versionName(String versionName) { - this.versionName = versionName; - return this; - } - - /** - * Get versionName - * @return versionName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getVersionName() { - return versionName; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionName(String versionName) { - this.versionName = versionName; - } - - - public Version versionOwner(User versionOwner) { - this.versionOwner = versionOwner; - return this; - } - - /** - * Get versionOwner - * @return versionOwner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public User getVersionOwner() { - return versionOwner; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionOwner(User versionOwner) { - this.versionOwner = versionOwner; - } - - - public Version versionGroupAccess(GroupAccess versionGroupAccess) { - this.versionGroupAccess = versionGroupAccess; - return this; - } - - /** - * Get versionGroupAccess - * @return versionGroupAccess - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_GROUP_ACCESS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public GroupAccess getVersionGroupAccess() { - return versionGroupAccess; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_GROUP_ACCESS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionGroupAccess(GroupAccess versionGroupAccess) { - this.versionGroupAccess = versionGroupAccess; - } - - - public Version versionBranchPointRef(KeyValue versionBranchPointRef) { - this.versionBranchPointRef = versionBranchPointRef; - return this; - } - - /** - * Get versionBranchPointRef - * @return versionBranchPointRef - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_POINT_REF) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getVersionBranchPointRef() { - return versionBranchPointRef; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_POINT_REF) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionBranchPointRef(KeyValue versionBranchPointRef) { - this.versionBranchPointRef = versionBranchPointRef; - } - - - public Version versionBranchID(BigDecimal versionBranchID) { - this.versionBranchID = versionBranchID; - return this; - } - - /** - * Get versionBranchID - * @return versionBranchID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public BigDecimal getVersionBranchID() { - return versionBranchID; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_BRANCH_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionBranchID(BigDecimal versionBranchID) { - this.versionBranchID = versionBranchID; - } - - - public Version versionDate(LocalDate versionDate) { - this.versionDate = versionDate; - return this; - } - - /** - * Get versionDate - * @return versionDate - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getVersionDate() { - return versionDate; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionDate(LocalDate versionDate) { - this.versionDate = versionDate; - } - - - public Version versionFlag(VersionFlag versionFlag) { - this.versionFlag = versionFlag; - return this; - } - - /** - * Get versionFlag - * @return versionFlag - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VersionFlag getVersionFlag() { - return versionFlag; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionFlag(VersionFlag versionFlag) { - this.versionFlag = versionFlag; - } - - - public Version versionAnnot(String versionAnnot) { - this.versionAnnot = versionAnnot; - return this; - } - - /** - * Get versionAnnot - * @return versionAnnot - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_ANNOT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getVersionAnnot() { - return versionAnnot; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_ANNOT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionAnnot(String versionAnnot) { - this.versionAnnot = versionAnnot; - } - - - public Version annot(String annot) { - this.annot = annot; - return this; - } - - /** - * Get annot - * @return annot - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ANNOT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getAnnot() { - return annot; - } - - - @JsonProperty(JSON_PROPERTY_ANNOT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setAnnot(String annot) { - this.annot = annot; - } - - - public Version branchID(BigDecimal branchID) { - this.branchID = branchID; - return this; - } - - /** - * Get branchID - * @return branchID - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_BRANCH_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public BigDecimal getBranchID() { - return branchID; - } - - - @JsonProperty(JSON_PROPERTY_BRANCH_I_D) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setBranchID(BigDecimal branchID) { - this.branchID = branchID; - } - - - public Version branchPointRefKey(KeyValue branchPointRefKey) { - this.branchPointRefKey = branchPointRefKey; - return this; - } - - /** - * Get branchPointRefKey - * @return branchPointRefKey - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_BRANCH_POINT_REF_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public KeyValue getBranchPointRefKey() { - return branchPointRefKey; - } - - - @JsonProperty(JSON_PROPERTY_BRANCH_POINT_REF_KEY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setBranchPointRefKey(KeyValue branchPointRefKey) { - this.branchPointRefKey = branchPointRefKey; - } - - - public Version date(LocalDate date) { - this.date = date; - return this; - } - - /** - * Get date - * @return date - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public LocalDate getDate() { - return date; - } - - - @JsonProperty(JSON_PROPERTY_DATE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setDate(LocalDate date) { - this.date = date; - } - - - public Version flag(VersionFlag flag) { - this.flag = flag; - return this; - } - - /** - * Get flag - * @return flag - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VersionFlag getFlag() { - return flag; - } - - - @JsonProperty(JSON_PROPERTY_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFlag(VersionFlag flag) { - this.flag = flag; - } - - - public Version groupAccess(GroupAccess groupAccess) { - this.groupAccess = groupAccess; - return this; - } - - /** - * Get groupAccess - * @return groupAccess - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_GROUP_ACCESS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public GroupAccess getGroupAccess() { - return groupAccess; - } - - - @JsonProperty(JSON_PROPERTY_GROUP_ACCESS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setGroupAccess(GroupAccess groupAccess) { - this.groupAccess = groupAccess; - } - - - public Version name(String name) { - this.name = name; - return this; - } - - /** - * Get name - * @return name - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getName() { - return name; - } - - - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setName(String name) { - this.name = name; - } - - - public Version owner(User owner) { - this.owner = owner; - return this; - } - - /** - * Get owner - * @return owner - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public User getOwner() { - return owner; - } - - - @JsonProperty(JSON_PROPERTY_OWNER) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setOwner(User owner) { - this.owner = owner; - } - - - /** - * Return true if this Version object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Version version = (Version) o; - return Objects.equals(this.versionKey, version.versionKey) && - Objects.equals(this.versionName, version.versionName) && - Objects.equals(this.versionOwner, version.versionOwner) && - Objects.equals(this.versionGroupAccess, version.versionGroupAccess) && - Objects.equals(this.versionBranchPointRef, version.versionBranchPointRef) && - Objects.equals(this.versionBranchID, version.versionBranchID) && - Objects.equals(this.versionDate, version.versionDate) && - Objects.equals(this.versionFlag, version.versionFlag) && - Objects.equals(this.versionAnnot, version.versionAnnot) && - Objects.equals(this.annot, version.annot) && - Objects.equals(this.branchID, version.branchID) && - Objects.equals(this.branchPointRefKey, version.branchPointRefKey) && - Objects.equals(this.date, version.date) && - Objects.equals(this.flag, version.flag) && - Objects.equals(this.groupAccess, version.groupAccess) && - Objects.equals(this.name, version.name) && - Objects.equals(this.owner, version.owner); - } - - @Override - public int hashCode() { - return Objects.hash(versionKey, versionName, versionOwner, versionGroupAccess, versionBranchPointRef, versionBranchID, versionDate, versionFlag, versionAnnot, annot, branchID, branchPointRefKey, date, flag, groupAccess, name, owner); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Version {\n"); - sb.append(" versionKey: ").append(toIndentedString(versionKey)).append("\n"); - sb.append(" versionName: ").append(toIndentedString(versionName)).append("\n"); - sb.append(" versionOwner: ").append(toIndentedString(versionOwner)).append("\n"); - sb.append(" versionGroupAccess: ").append(toIndentedString(versionGroupAccess)).append("\n"); - sb.append(" versionBranchPointRef: ").append(toIndentedString(versionBranchPointRef)).append("\n"); - sb.append(" versionBranchID: ").append(toIndentedString(versionBranchID)).append("\n"); - sb.append(" versionDate: ").append(toIndentedString(versionDate)).append("\n"); - sb.append(" versionFlag: ").append(toIndentedString(versionFlag)).append("\n"); - sb.append(" versionAnnot: ").append(toIndentedString(versionAnnot)).append("\n"); - sb.append(" annot: ").append(toIndentedString(annot)).append("\n"); - sb.append(" branchID: ").append(toIndentedString(branchID)).append("\n"); - sb.append(" branchPointRefKey: ").append(toIndentedString(branchPointRefKey)).append("\n"); - sb.append(" date: ").append(toIndentedString(date)).append("\n"); - sb.append(" flag: ").append(toIndentedString(flag)).append("\n"); - sb.append(" groupAccess: ").append(toIndentedString(groupAccess)).append("\n"); - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" owner: ").append(toIndentedString(owner)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `versionKey` to the URL query string - if (getVersionKey() != null) { - joiner.add(getVersionKey().toUrlQueryString(prefix + "versionKey" + suffix)); - } - - // add `versionName` to the URL query string - if (getVersionName() != null) { - joiner.add(String.format("%sversionName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `versionOwner` to the URL query string - if (getVersionOwner() != null) { - joiner.add(getVersionOwner().toUrlQueryString(prefix + "versionOwner" + suffix)); - } - - // add `versionGroupAccess` to the URL query string - if (getVersionGroupAccess() != null) { - joiner.add(getVersionGroupAccess().toUrlQueryString(prefix + "versionGroupAccess" + suffix)); - } - - // add `versionBranchPointRef` to the URL query string - if (getVersionBranchPointRef() != null) { - joiner.add(getVersionBranchPointRef().toUrlQueryString(prefix + "versionBranchPointRef" + suffix)); - } - - // add `versionBranchID` to the URL query string - if (getVersionBranchID() != null) { - joiner.add(String.format("%sversionBranchID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionBranchID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `versionDate` to the URL query string - if (getVersionDate() != null) { - joiner.add(String.format("%sversionDate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `versionFlag` to the URL query string - if (getVersionFlag() != null) { - joiner.add(getVersionFlag().toUrlQueryString(prefix + "versionFlag" + suffix)); - } - - // add `versionAnnot` to the URL query string - if (getVersionAnnot() != null) { - joiner.add(String.format("%sversionAnnot%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionAnnot()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `annot` to the URL query string - if (getAnnot() != null) { - joiner.add(String.format("%sannot%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getAnnot()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `branchID` to the URL query string - if (getBranchID() != null) { - joiner.add(String.format("%sbranchID%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getBranchID()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `branchPointRefKey` to the URL query string - if (getBranchPointRefKey() != null) { - joiner.add(getBranchPointRefKey().toUrlQueryString(prefix + "branchPointRefKey" + suffix)); - } - - // add `date` to the URL query string - if (getDate() != null) { - joiner.add(String.format("%sdate%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDate()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `flag` to the URL query string - if (getFlag() != null) { - joiner.add(getFlag().toUrlQueryString(prefix + "flag" + suffix)); - } - - // add `groupAccess` to the URL query string - if (getGroupAccess() != null) { - joiner.add(getGroupAccess().toUrlQueryString(prefix + "groupAccess" + suffix)); - } - - // add `name` to the URL query string - if (getName() != null) { - joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `owner` to the URL query string - if (getOwner() != null) { - joiner.add(getOwner().toUrlQueryString(prefix + "owner" + suffix)); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java deleted file mode 100644 index e5653c87b9..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionFlag.java +++ /dev/null @@ -1,294 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * VersionFlag - */ -@JsonPropertyOrder({ - VersionFlag.JSON_PROPERTY_VERSION_FLAG, - VersionFlag.JSON_PROPERTY_INT_VALUE, - VersionFlag.JSON_PROPERTY_ARCHIVED, - VersionFlag.JSON_PROPERTY_CURRENT, - VersionFlag.JSON_PROPERTY_PUBLISHED -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class VersionFlag { - public static final String JSON_PROPERTY_VERSION_FLAG = "versionFlag"; - private Integer versionFlag; - - public static final String JSON_PROPERTY_INT_VALUE = "intValue"; - private Integer intValue; - - public static final String JSON_PROPERTY_ARCHIVED = "archived"; - private Boolean archived; - - public static final String JSON_PROPERTY_CURRENT = "current"; - private Boolean current; - - public static final String JSON_PROPERTY_PUBLISHED = "published"; - private Boolean published; - - public VersionFlag() { - } - - public VersionFlag versionFlag(Integer versionFlag) { - this.versionFlag = versionFlag; - return this; - } - - /** - * Get versionFlag - * @return versionFlag - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getVersionFlag() { - return versionFlag; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_FLAG) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionFlag(Integer versionFlag) { - this.versionFlag = versionFlag; - } - - - public VersionFlag intValue(Integer intValue) { - this.intValue = intValue; - return this; - } - - /** - * Get intValue - * @return intValue - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_INT_VALUE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getIntValue() { - return intValue; - } - - - @JsonProperty(JSON_PROPERTY_INT_VALUE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setIntValue(Integer intValue) { - this.intValue = intValue; - } - - - public VersionFlag archived(Boolean archived) { - this.archived = archived; - return this; - } - - /** - * Get archived - * @return archived - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_ARCHIVED) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getArchived() { - return archived; - } - - - @JsonProperty(JSON_PROPERTY_ARCHIVED) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setArchived(Boolean archived) { - this.archived = archived; - } - - - public VersionFlag current(Boolean current) { - this.current = current; - return this; - } - - /** - * Get current - * @return current - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CURRENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getCurrent() { - return current; - } - - - @JsonProperty(JSON_PROPERTY_CURRENT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCurrent(Boolean current) { - this.current = current; - } - - - public VersionFlag published(Boolean published) { - this.published = published; - return this; - } - - /** - * Get published - * @return published - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PUBLISHED) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getPublished() { - return published; - } - - - @JsonProperty(JSON_PROPERTY_PUBLISHED) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPublished(Boolean published) { - this.published = published; - } - - - /** - * Return true if this VersionFlag object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - VersionFlag versionFlag = (VersionFlag) o; - return Objects.equals(this.versionFlag, versionFlag.versionFlag) && - Objects.equals(this.intValue, versionFlag.intValue) && - Objects.equals(this.archived, versionFlag.archived) && - Objects.equals(this.current, versionFlag.current) && - Objects.equals(this.published, versionFlag.published); - } - - @Override - public int hashCode() { - return Objects.hash(versionFlag, intValue, archived, current, published); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class VersionFlag {\n"); - sb.append(" versionFlag: ").append(toIndentedString(versionFlag)).append("\n"); - sb.append(" intValue: ").append(toIndentedString(intValue)).append("\n"); - sb.append(" archived: ").append(toIndentedString(archived)).append("\n"); - sb.append(" current: ").append(toIndentedString(current)).append("\n"); - sb.append(" published: ").append(toIndentedString(published)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `versionFlag` to the URL query string - if (getVersionFlag() != null) { - joiner.add(String.format("%sversionFlag%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionFlag()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `intValue` to the URL query string - if (getIntValue() != null) { - joiner.add(String.format("%sintValue%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getIntValue()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `archived` to the URL query string - if (getArchived() != null) { - joiner.add(String.format("%sarchived%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getArchived()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `current` to the URL query string - if (getCurrent() != null) { - joiner.add(String.format("%scurrent%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCurrent()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `published` to the URL query string - if (getPublished() != null) { - joiner.add(String.format("%spublished%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getPublished()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java deleted file mode 100644 index 076b8794b5..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableType.java +++ /dev/null @@ -1,402 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * VersionableType - */ -@JsonPropertyOrder({ - VersionableType.JSON_PROPERTY_V_TYPE, - VersionableType.JSON_PROPERTY_NAME, - VersionableType.JSON_PROPERTY_V_CLASS, - VersionableType.JSON_PROPERTY_B_TOP_LEVEL, - VersionableType.JSON_PROPERTY_CODE, - VersionableType.JSON_PROPERTY_IS_TOP_LEVEL, - VersionableType.JSON_PROPERTY_TYPE_NAME, - VersionableType.JSON_PROPERTY_VERSION_CLASS -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class VersionableType { - public static final String JSON_PROPERTY_V_TYPE = "vType"; - private Integer vType; - - public static final String JSON_PROPERTY_NAME = "name"; - private String name; - - public static final String JSON_PROPERTY_V_CLASS = "vClass"; - private Object vClass; - - public static final String JSON_PROPERTY_B_TOP_LEVEL = "bTopLevel"; - private Boolean bTopLevel; - - public static final String JSON_PROPERTY_CODE = "code"; - private Integer code; - - public static final String JSON_PROPERTY_IS_TOP_LEVEL = "isTopLevel"; - private Boolean isTopLevel; - - public static final String JSON_PROPERTY_TYPE_NAME = "typeName"; - private String typeName; - - public static final String JSON_PROPERTY_VERSION_CLASS = "versionClass"; - private Object versionClass; - - public VersionableType() { - } - - public VersionableType vType(Integer vType) { - this.vType = vType; - return this; - } - - /** - * Get vType - * @return vType - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_V_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getvType() { - return vType; - } - - - @JsonProperty(JSON_PROPERTY_V_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setvType(Integer vType) { - this.vType = vType; - } - - - public VersionableType name(String name) { - this.name = name; - return this; - } - - /** - * Get name - * @return name - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getName() { - return name; - } - - - @JsonProperty(JSON_PROPERTY_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setName(String name) { - this.name = name; - } - - - public VersionableType vClass(Object vClass) { - this.vClass = vClass; - return this; - } - - /** - * Get vClass - * @return vClass - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_V_CLASS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Object getvClass() { - return vClass; - } - - - @JsonProperty(JSON_PROPERTY_V_CLASS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setvClass(Object vClass) { - this.vClass = vClass; - } - - - public VersionableType bTopLevel(Boolean bTopLevel) { - this.bTopLevel = bTopLevel; - return this; - } - - /** - * Get bTopLevel - * @return bTopLevel - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_B_TOP_LEVEL) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getbTopLevel() { - return bTopLevel; - } - - - @JsonProperty(JSON_PROPERTY_B_TOP_LEVEL) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setbTopLevel(Boolean bTopLevel) { - this.bTopLevel = bTopLevel; - } - - - public VersionableType code(Integer code) { - this.code = code; - return this; - } - - /** - * Get code - * @return code - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_CODE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Integer getCode() { - return code; - } - - - @JsonProperty(JSON_PROPERTY_CODE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCode(Integer code) { - this.code = code; - } - - - public VersionableType isTopLevel(Boolean isTopLevel) { - this.isTopLevel = isTopLevel; - return this; - } - - /** - * Get isTopLevel - * @return isTopLevel - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_IS_TOP_LEVEL) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getIsTopLevel() { - return isTopLevel; - } - - - @JsonProperty(JSON_PROPERTY_IS_TOP_LEVEL) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setIsTopLevel(Boolean isTopLevel) { - this.isTopLevel = isTopLevel; - } - - - public VersionableType typeName(String typeName) { - this.typeName = typeName; - return this; - } - - /** - * Get typeName - * @return typeName - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TYPE_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public String getTypeName() { - return typeName; - } - - - @JsonProperty(JSON_PROPERTY_TYPE_NAME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTypeName(String typeName) { - this.typeName = typeName; - } - - - public VersionableType versionClass(Object versionClass) { - this.versionClass = versionClass; - return this; - } - - /** - * Get versionClass - * @return versionClass - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION_CLASS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Object getVersionClass() { - return versionClass; - } - - - @JsonProperty(JSON_PROPERTY_VERSION_CLASS) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersionClass(Object versionClass) { - this.versionClass = versionClass; - } - - - /** - * Return true if this VersionableType object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - VersionableType versionableType = (VersionableType) o; - return Objects.equals(this.vType, versionableType.vType) && - Objects.equals(this.name, versionableType.name) && - Objects.equals(this.vClass, versionableType.vClass) && - Objects.equals(this.bTopLevel, versionableType.bTopLevel) && - Objects.equals(this.code, versionableType.code) && - Objects.equals(this.isTopLevel, versionableType.isTopLevel) && - Objects.equals(this.typeName, versionableType.typeName) && - Objects.equals(this.versionClass, versionableType.versionClass); - } - - @Override - public int hashCode() { - return Objects.hash(vType, name, vClass, bTopLevel, code, isTopLevel, typeName, versionClass); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class VersionableType {\n"); - sb.append(" vType: ").append(toIndentedString(vType)).append("\n"); - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" vClass: ").append(toIndentedString(vClass)).append("\n"); - sb.append(" bTopLevel: ").append(toIndentedString(bTopLevel)).append("\n"); - sb.append(" code: ").append(toIndentedString(code)).append("\n"); - sb.append(" isTopLevel: ").append(toIndentedString(isTopLevel)).append("\n"); - sb.append(" typeName: ").append(toIndentedString(typeName)).append("\n"); - sb.append(" versionClass: ").append(toIndentedString(versionClass)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `vType` to the URL query string - if (getvType() != null) { - joiner.add(String.format("%svType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getvType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `name` to the URL query string - if (getName() != null) { - joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `vClass` to the URL query string - if (getvClass() != null) { - joiner.add(String.format("%svClass%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getvClass()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `bTopLevel` to the URL query string - if (getbTopLevel() != null) { - joiner.add(String.format("%sbTopLevel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getbTopLevel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `code` to the URL query string - if (getCode() != null) { - joiner.add(String.format("%scode%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getCode()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `isTopLevel` to the URL query string - if (getIsTopLevel() != null) { - joiner.add(String.format("%sisTopLevel%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getIsTopLevel()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `typeName` to the URL query string - if (getTypeName() != null) { - joiner.add(String.format("%stypeName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getTypeName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - // add `versionClass` to the URL query string - if (getVersionClass() != null) { - joiner.add(String.format("%sversionClass%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getVersionClass()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java deleted file mode 100644 index 1b2ddc921b..0000000000 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/VersionableTypeVersion.java +++ /dev/null @@ -1,188 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.StringJoiner; -import java.util.Objects; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.vcell.restclient.model.Version; -import org.vcell.restclient.model.VersionableType; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; - - -/** - * VersionableTypeVersion - */ -@JsonPropertyOrder({ - VersionableTypeVersion.JSON_PROPERTY_V_TYPE, - VersionableTypeVersion.JSON_PROPERTY_VERSION -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class VersionableTypeVersion { - public static final String JSON_PROPERTY_V_TYPE = "vType"; - private VersionableType vType; - - public static final String JSON_PROPERTY_VERSION = "version"; - private Version version; - - public VersionableTypeVersion() { - } - - public VersionableTypeVersion vType(VersionableType vType) { - this.vType = vType; - return this; - } - - /** - * Get vType - * @return vType - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_V_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public VersionableType getvType() { - return vType; - } - - - @JsonProperty(JSON_PROPERTY_V_TYPE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setvType(VersionableType vType) { - this.vType = vType; - } - - - public VersionableTypeVersion version(Version version) { - this.version = version; - return this; - } - - /** - * Get version - * @return version - **/ - @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_VERSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Version getVersion() { - return version; - } - - - @JsonProperty(JSON_PROPERTY_VERSION) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVersion(Version version) { - this.version = version; - } - - - /** - * Return true if this VersionableTypeVersion object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - VersionableTypeVersion versionableTypeVersion = (VersionableTypeVersion) o; - return Objects.equals(this.vType, versionableTypeVersion.vType) && - Objects.equals(this.version, versionableTypeVersion.version); - } - - @Override - public int hashCode() { - return Objects.hash(vType, version); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class VersionableTypeVersion {\n"); - sb.append(" vType: ").append(toIndentedString(vType)).append("\n"); - sb.append(" version: ").append(toIndentedString(version)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - // add `vType` to the URL query string - if (getvType() != null) { - joiner.add(getvType().toUrlQueryString(prefix + "vType" + suffix)); - } - - // add `version` to the URL query string - if (getVersion() != null) { - joiner.add(getVersion().toUrlQueryString(prefix + "version" + suffix)); - } - - return joiner.toString(); - } -} - diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java deleted file mode 100644 index bfea5c3459..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/CartesianMeshTest.java +++ /dev/null @@ -1,175 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.io.File; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.UCDInfo; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for CartesianMesh - */ -public class CartesianMeshTest { - private final CartesianMesh model = new CartesianMesh(); - - /** - * Model tests for CartesianMesh - */ - @Test - public void testCartesianMesh() { - // TODO: test CartesianMesh - } - - /** - * Test the property 'compressedBytes' - */ - @Test - public void compressedBytesTest() { - // TODO: test compressedBytes - } - - /** - * Test the property 'uCDInfo' - */ - @Test - public void uCDInfoTest() { - // TODO: test uCDInfo - } - - /** - * Test the property 'geometryDimension' - */ - @Test - public void geometryDimensionTest() { - // TODO: test geometryDimension - } - - /** - * Test the property 'volumeRegionMapSubvolume' - */ - @Test - public void volumeRegionMapSubvolumeTest() { - // TODO: test volumeRegionMapSubvolume - } - - /** - * Test the property 'membraneRegionMapSubvolumesInOut' - */ - @Test - public void membraneRegionMapSubvolumesInOutTest() { - // TODO: test membraneRegionMapSubvolumesInOut - } - - /** - * Test the property 'numMembraneElements' - */ - @Test - public void numMembraneElementsTest() { - // TODO: test numMembraneElements - } - - /** - * Test the property 'numMembraneRegions' - */ - @Test - public void numMembraneRegionsTest() { - // TODO: test numMembraneRegions - } - - /** - * Test the property 'numVolumeElements' - */ - @Test - public void numVolumeElementsTest() { - // TODO: test numVolumeElements - } - - /** - * Test the property 'numVolumeRegions' - */ - @Test - public void numVolumeRegionsTest() { - // TODO: test numVolumeRegions - } - - /** - * Test the property 'iSize' - */ - @Test - public void iSizeTest() { - // TODO: test iSize - } - - /** - * Test the property 'sizeX' - */ - @Test - public void sizeXTest() { - // TODO: test sizeX - } - - /** - * Test the property 'sizeY' - */ - @Test - public void sizeYTest() { - // TODO: test sizeY - } - - /** - * Test the property 'sizeZ' - */ - @Test - public void sizeZTest() { - // TODO: test sizeZ - } - - /** - * Test the property 'membraneConnectivityOK' - */ - @Test - public void membraneConnectivityOKTest() { - // TODO: test membraneConnectivityOK - } - - /** - * Test the property 'outputFields' - */ - @Test - public void outputFieldsTest() { - // TODO: test outputFields - } - - /** - * Test the property 'chomboMesh' - */ - @Test - public void chomboMeshTest() { - // TODO: test chomboMesh - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java deleted file mode 100644 index 6bb06a0f4d..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/CoordinateTest.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for Coordinate - */ -public class CoordinateTest { - private final Coordinate model = new Coordinate(); - - /** - * Model tests for Coordinate - */ - @Test - public void testCoordinate() { - // TODO: test Coordinate - } - - /** - * Test the property 'x' - */ - @Test - public void xTest() { - // TODO: test x - } - - /** - * Test the property 'y' - */ - @Test - public void yTest() { - // TODO: test y - } - - /** - * Test the property 'z' - */ - @Test - public void zTest() { - // TODO: test z - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java index f949abeb0a..6a85760852 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java @@ -63,14 +63,6 @@ public void nameTest() { // TODO: test name } - /** - * Test the property 'iD' - */ - @Test - public void iDTest() { - // TODO: test iD - } - /** * Test the property 'jobIndex' */ diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java deleted file mode 100644 index 9372bce46b..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataDBOperationSpecTest.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VersionableTypeVersion; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataDBOperationSpec - */ -public class FieldDataDBOperationSpecTest { - private final FieldDataDBOperationSpec model = new FieldDataDBOperationSpec(); - - /** - * Model tests for FieldDataDBOperationSpec - */ - @Test - public void testFieldDataDBOperationSpec() { - // TODO: test FieldDataDBOperationSpec - } - - /** - * Test the property 'opType' - */ - @Test - public void opTypeTest() { - // TODO: test opType - } - - /** - * Test the property 'specEDI' - */ - @Test - public void specEDITest() { - // TODO: test specEDI - } - - /** - * Test the property 'owner' - */ - @Test - public void ownerTest() { - // TODO: test owner - } - - /** - * Test the property 'newExtDataIDName' - */ - @Test - public void newExtDataIDNameTest() { - // TODO: test newExtDataIDName - } - - /** - * Test the property 'annotation' - */ - @Test - public void annotationTest() { - // TODO: test annotation - } - - /** - * Test the property 'sourceNames' - */ - @Test - public void sourceNamesTest() { - // TODO: test sourceNames - } - - /** - * Test the property 'sourceOwner' - */ - @Test - public void sourceOwnerTest() { - // TODO: test sourceOwner - } - - /** - * Test the property 'bIncludeSimRefs' - */ - @Test - public void bIncludeSimRefsTest() { - // TODO: test bIncludeSimRefs - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java deleted file mode 100644 index 8668e9b408..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataExternalDataIDsTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataExternalDataIDs - */ -public class FieldDataExternalDataIDsTest { - private final FieldDataExternalDataIDs model = new FieldDataExternalDataIDs(); - - /** - * Model tests for FieldDataExternalDataIDs - */ - @Test - public void testFieldDataExternalDataIDs() { - // TODO: test FieldDataExternalDataIDs - } - - /** - * Test the property 'externalDataIdentifiers' - */ - @Test - public void externalDataIdentifiersTest() { - // TODO: test externalDataIdentifiers - } - - /** - * Test the property 'externalDataAnnotations' - */ - @Test - public void externalDataAnnotationsTest() { - // TODO: test externalDataAnnotations - } - - /** - * Test the property 'externalDataIDSimRefs' - */ - @Test - public void externalDataIDSimRefsTest() { - // TODO: test externalDataIDSimRefs - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java deleted file mode 100644 index b1311fdcaf..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataFileOperationSpecTest.java +++ /dev/null @@ -1,186 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.CartesianMesh; -import org.vcell.restclient.model.Extent; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.KeyValue; -import org.vcell.restclient.model.Origin; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VariableType; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataFileOperationSpec - */ -public class FieldDataFileOperationSpecTest { - private final FieldDataFileOperationSpec model = new FieldDataFileOperationSpec(); - - /** - * Model tests for FieldDataFileOperationSpec - */ - @Test - public void testFieldDataFileOperationSpec() { - // TODO: test FieldDataFileOperationSpec - } - - /** - * Test the property 'opType' - */ - @Test - public void opTypeTest() { - // TODO: test opType - } - - /** - * Test the property 'shortSpecData' - */ - @Test - public void shortSpecDataTest() { - // TODO: test shortSpecData - } - - /** - * Test the property 'doubleSpecData' - */ - @Test - public void doubleSpecDataTest() { - // TODO: test doubleSpecData - } - - /** - * Test the property 'cartesianMesh' - */ - @Test - public void cartesianMeshTest() { - // TODO: test cartesianMesh - } - - /** - * Test the property 'specEDI' - */ - @Test - public void specEDITest() { - // TODO: test specEDI - } - - /** - * Test the property 'varNames' - */ - @Test - public void varNamesTest() { - // TODO: test varNames - } - - /** - * Test the property 'variableTypes' - */ - @Test - public void variableTypesTest() { - // TODO: test variableTypes - } - - /** - * Test the property 'times' - */ - @Test - public void timesTest() { - // TODO: test times - } - - /** - * Test the property 'owner' - */ - @Test - public void ownerTest() { - // TODO: test owner - } - - /** - * Test the property 'origin' - */ - @Test - public void originTest() { - // TODO: test origin - } - - /** - * Test the property 'extent' - */ - @Test - public void extentTest() { - // TODO: test extent - } - - /** - * Test the property 'isize' - */ - @Test - public void isizeTest() { - // TODO: test isize - } - - /** - * Test the property 'annotation' - */ - @Test - public void annotationTest() { - // TODO: test annotation - } - - /** - * Test the property 'sourceSimParamScanJobIndex' - */ - @Test - public void sourceSimParamScanJobIndexTest() { - // TODO: test sourceSimParamScanJobIndex - } - - /** - * Test the property 'sourceSimDataKey' - */ - @Test - public void sourceSimDataKeyTest() { - // TODO: test sourceSimDataKey - } - - /** - * Test the property 'sourceOwner' - */ - @Test - public void sourceOwnerTest() { - // TODO: test sourceOwner - } - - /** - * Test the property 'fieldDataName' - */ - @Test - public void fieldDataNameTest() { - // TODO: test fieldDataName - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java deleted file mode 100644 index 9b861abde9..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataInfoTest.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.Extent; -import org.vcell.restclient.model.ISize; -import org.vcell.restclient.model.Origin; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataInfo - */ -public class FieldDataInfoTest { - private final FieldDataInfo model = new FieldDataInfo(); - - /** - * Model tests for FieldDataInfo - */ - @Test - public void testFieldDataInfo() { - // TODO: test FieldDataInfo - } - - /** - * Test the property 'extent' - */ - @Test - public void extentTest() { - // TODO: test extent - } - - /** - * Test the property 'origin' - */ - @Test - public void originTest() { - // TODO: test origin - } - - /** - * Test the property 'isize' - */ - @Test - public void isizeTest() { - // TODO: test isize - } - - /** - * Test the property 'times' - */ - @Test - public void timesTest() { - // TODO: test times - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java deleted file mode 100644 index 3e095e7881..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataNoCopyConflictTest.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataNoCopyConflict - */ -public class FieldDataNoCopyConflictTest { - private final FieldDataNoCopyConflict model = new FieldDataNoCopyConflict(); - - /** - * Model tests for FieldDataNoCopyConflict - */ - @Test - public void testFieldDataNoCopyConflict() { - // TODO: test FieldDataNoCopyConflict - } - - /** - * Test the property 'oldNameNewIDHash' - */ - @Test - public void oldNameNewIDHashTest() { - // TODO: test oldNameNewIDHash - } - - /** - * Test the property 'oldNameOldExtDataIDKeyHash' - */ - @Test - public void oldNameOldExtDataIDKeyHashTest() { - // TODO: test oldNameOldExtDataIDKeyHash - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java deleted file mode 100644 index 8468e879f5..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/FieldDataReferencesTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.vcell.restclient.model.ExternalDataIdentifier; -import org.vcell.restclient.model.KeyValue; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for FieldDataReferences - */ -public class FieldDataReferencesTest { - private final FieldDataReferences model = new FieldDataReferences(); - - /** - * Model tests for FieldDataReferences - */ - @Test - public void testFieldDataReferences() { - // TODO: test FieldDataReferences - } - - /** - * Test the property 'externalDataIdentifiers' - */ - @Test - public void externalDataIdentifiersTest() { - // TODO: test externalDataIdentifiers - } - - /** - * Test the property 'externalDataAnnotations' - */ - @Test - public void externalDataAnnotationsTest() { - // TODO: test externalDataAnnotations - } - - /** - * Test the property 'externalDataIDSimRefs' - */ - @Test - public void externalDataIDSimRefsTest() { - // TODO: test externalDataIDSimRefs - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java deleted file mode 100644 index 48e86d6d02..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/GroupAccessTest.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.math.BigDecimal; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for GroupAccess - */ -public class GroupAccessTest { - private final GroupAccess model = new GroupAccess(); - - /** - * Model tests for GroupAccess - */ - @Test - public void testGroupAccess() { - // TODO: test GroupAccess - } - - /** - * Test the property 'groupid' - */ - @Test - public void groupidTest() { - // TODO: test groupid - } - - /** - * Test the property 'description' - */ - @Test - public void descriptionTest() { - // TODO: test description - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java index a9360e052c..fada1b7bb9 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/ISizeTest.java @@ -61,12 +61,4 @@ public void zTest() { // TODO: test z } - /** - * Test the property 'xYZ' - */ - @Test - public void xYZTest() { - // TODO: test xYZ - } - } diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java deleted file mode 100644 index 28ee478e4a..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UCDInfoTest.java +++ /dev/null @@ -1,139 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import org.vcell.restclient.model.Coordinate; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for UCDInfo - */ -public class UCDInfoTest { - private final UCDInfo model = new UCDInfo(); - - /** - * Model tests for UCDInfo - */ - @Test - public void testUCDInfo() { - // TODO: test UCDInfo - } - - /** - * Test the property 'ucdGridNodes' - */ - @Test - public void ucdGridNodesTest() { - // TODO: test ucdGridNodes - } - - /** - * Test the property 'ucdMembraneQuads' - */ - @Test - public void ucdMembraneQuadsTest() { - // TODO: test ucdMembraneQuads - } - - /** - * Test the property 'reducedUCDGridNodesV' - */ - @Test - public void reducedUCDGridNodesVTest() { - // TODO: test reducedUCDGridNodesV - } - - /** - * Test the property 'uCDGridNodes' - */ - @Test - public void uCDGridNodesTest() { - // TODO: test uCDGridNodes - } - - /** - * Test the property 'uCDMembraneQuads' - */ - @Test - public void uCDMembraneQuadsTest() { - // TODO: test uCDMembraneQuads - } - - /** - * Test the property 'numVolumeNodesX' - */ - @Test - public void numVolumeNodesXTest() { - // TODO: test numVolumeNodesX - } - - /** - * Test the property 'numVolumeNodesY' - */ - @Test - public void numVolumeNodesYTest() { - // TODO: test numVolumeNodesY - } - - /** - * Test the property 'numVolumeNodesZ' - */ - @Test - public void numVolumeNodesZTest() { - // TODO: test numVolumeNodesZ - } - - /** - * Test the property 'numPointsXYZ' - */ - @Test - public void numPointsXYZTest() { - // TODO: test numPointsXYZ - } - - /** - * Test the property 'numVolumeNodesXY' - */ - @Test - public void numVolumeNodesXYTest() { - // TODO: test numVolumeNodesXY - } - - /** - * Test the property 'numVolumeCells' - */ - @Test - public void numVolumeCellsTest() { - // TODO: test numVolumeCells - } - - /** - * Test the property 'numMembraneCells' - */ - @Test - public void numMembraneCellsTest() { - // TODO: test numMembraneCells - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java index 6d92662ce2..f8475aeef1 100644 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java +++ b/vcell-restclient/src/test/java/org/vcell/restclient/model/UserTest.java @@ -54,14 +54,6 @@ public void keyTest() { // TODO: test key } - /** - * Test the property 'iD' - */ - @Test - public void iDTest() { - // TODO: test iD - } - /** * Test the property 'name' */ diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java deleted file mode 100644 index c75b3a179e..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionFlagTest.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for VersionFlag - */ -public class VersionFlagTest { - private final VersionFlag model = new VersionFlag(); - - /** - * Model tests for VersionFlag - */ - @Test - public void testVersionFlag() { - // TODO: test VersionFlag - } - - /** - * Test the property 'versionFlag' - */ - @Test - public void versionFlagTest() { - // TODO: test versionFlag - } - - /** - * Test the property 'intValue' - */ - @Test - public void intValueTest() { - // TODO: test intValue - } - - /** - * Test the property 'archived' - */ - @Test - public void archivedTest() { - // TODO: test archived - } - - /** - * Test the property 'current' - */ - @Test - public void currentTest() { - // TODO: test current - } - - /** - * Test the property 'published' - */ - @Test - public void publishedTest() { - // TODO: test published - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java deleted file mode 100644 index bc83dcdd39..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionTest.java +++ /dev/null @@ -1,182 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.math.BigDecimal; -import java.time.LocalDate; -import java.util.Arrays; -import org.vcell.restclient.model.GroupAccess; -import org.vcell.restclient.model.KeyValue; -import org.vcell.restclient.model.User; -import org.vcell.restclient.model.VersionFlag; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for Version - */ -public class VersionTest { - private final Version model = new Version(); - - /** - * Model tests for Version - */ - @Test - public void testVersion() { - // TODO: test Version - } - - /** - * Test the property 'versionKey' - */ - @Test - public void versionKeyTest() { - // TODO: test versionKey - } - - /** - * Test the property 'versionName' - */ - @Test - public void versionNameTest() { - // TODO: test versionName - } - - /** - * Test the property 'versionOwner' - */ - @Test - public void versionOwnerTest() { - // TODO: test versionOwner - } - - /** - * Test the property 'versionGroupAccess' - */ - @Test - public void versionGroupAccessTest() { - // TODO: test versionGroupAccess - } - - /** - * Test the property 'versionBranchPointRef' - */ - @Test - public void versionBranchPointRefTest() { - // TODO: test versionBranchPointRef - } - - /** - * Test the property 'versionBranchID' - */ - @Test - public void versionBranchIDTest() { - // TODO: test versionBranchID - } - - /** - * Test the property 'versionDate' - */ - @Test - public void versionDateTest() { - // TODO: test versionDate - } - - /** - * Test the property 'versionFlag' - */ - @Test - public void versionFlagTest() { - // TODO: test versionFlag - } - - /** - * Test the property 'versionAnnot' - */ - @Test - public void versionAnnotTest() { - // TODO: test versionAnnot - } - - /** - * Test the property 'annot' - */ - @Test - public void annotTest() { - // TODO: test annot - } - - /** - * Test the property 'branchID' - */ - @Test - public void branchIDTest() { - // TODO: test branchID - } - - /** - * Test the property 'branchPointRefKey' - */ - @Test - public void branchPointRefKeyTest() { - // TODO: test branchPointRefKey - } - - /** - * Test the property 'date' - */ - @Test - public void dateTest() { - // TODO: test date - } - - /** - * Test the property 'flag' - */ - @Test - public void flagTest() { - // TODO: test flag - } - - /** - * Test the property 'groupAccess' - */ - @Test - public void groupAccessTest() { - // TODO: test groupAccess - } - - /** - * Test the property 'name' - */ - @Test - public void nameTest() { - // TODO: test name - } - - /** - * Test the property 'owner' - */ - @Test - public void ownerTest() { - // TODO: test owner - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java deleted file mode 100644 index 733af955ef..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeTest.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for VersionableType - */ -public class VersionableTypeTest { - private final VersionableType model = new VersionableType(); - - /** - * Model tests for VersionableType - */ - @Test - public void testVersionableType() { - // TODO: test VersionableType - } - - /** - * Test the property 'vType' - */ - @Test - public void vTypeTest() { - // TODO: test vType - } - - /** - * Test the property 'name' - */ - @Test - public void nameTest() { - // TODO: test name - } - - /** - * Test the property 'vClass' - */ - @Test - public void vClassTest() { - // TODO: test vClass - } - - /** - * Test the property 'bTopLevel' - */ - @Test - public void bTopLevelTest() { - // TODO: test bTopLevel - } - - /** - * Test the property 'code' - */ - @Test - public void codeTest() { - // TODO: test code - } - - /** - * Test the property 'isTopLevel' - */ - @Test - public void isTopLevelTest() { - // TODO: test isTopLevel - } - - /** - * Test the property 'typeName' - */ - @Test - public void typeNameTest() { - // TODO: test typeName - } - - /** - * Test the property 'versionClass' - */ - @Test - public void versionClassTest() { - // TODO: test versionClass - } - -} diff --git a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java b/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java deleted file mode 100644 index 05c8203fd5..0000000000 --- a/vcell-restclient/src/test/java/org/vcell/restclient/model/VersionableTypeVersionTest.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package org.vcell.restclient.model; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import java.util.Arrays; -import org.vcell.restclient.model.Version; -import org.vcell.restclient.model.VersionableType; -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -/** - * Model tests for VersionableTypeVersion - */ -public class VersionableTypeVersionTest { - private final VersionableTypeVersion model = new VersionableTypeVersion(); - - /** - * Model tests for VersionableTypeVersion - */ - @Test - public void testVersionableTypeVersion() { - // TODO: test VersionableTypeVersion - } - - /** - * Test the property 'vType' - */ - @Test - public void vTypeTest() { - // TODO: test vType - } - - /** - * Test the property 'version' - */ - @Test - public void versionTest() { - // TODO: test version - } - -} diff --git a/webapp-ng/src/app/core/modules/openapi/model/access-token-representation.ts b/webapp-ng/src/app/core/modules/openapi/model/access-token-representation.ts deleted file mode 100644 index 7f0dfbb6da..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/access-token-representation.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface AccessTokenRepresentation { - token?: string; - creationDateSeconds?: number; - expireDateSeconds?: number; - userId?: string; - userKey?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts b/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts deleted file mode 100644 index 243cf9642e..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/cartesian-mesh.ts +++ /dev/null @@ -1,34 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { UCDInfo } from './ucd-info'; -import { ISize } from './i-size'; - - -export interface CartesianMesh { - compressedBytes?: Blob; - uCDInfo?: UCDInfo; - geometryDimension?: number; - volumeRegionMapSubvolume?: { [key: string]: number; }; - membraneRegionMapSubvolumesInOut?: { [key: string]: any; }; - numMembraneElements?: number; - numMembraneRegions?: number; - numVolumeElements?: number; - numVolumeRegions?: number; - iSize?: ISize; - sizeX?: number; - sizeY?: number; - sizeZ?: number; - membraneConnectivityOK?: boolean; - outputFields?: Array; - chomboMesh?: boolean; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts b/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts deleted file mode 100644 index d91314ddc1..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/coordinate.ts +++ /dev/null @@ -1,19 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface Coordinate { - x?: number; - y?: number; - z?: number; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts deleted file mode 100644 index 19220adf5a..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-db-operation-spec.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { User } from './user'; -import { VersionableTypeVersion } from './versionable-type-version'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataDBOperationSpec { - opType?: number; - specEDI?: ExternalDataIdentifier; - owner?: User; - newExtDataIDName?: string; - annotation?: string; - sourceNames?: Array; - sourceOwner?: VersionableTypeVersion; - bIncludeSimRefs?: boolean; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts deleted file mode 100644 index 1947a69a7c..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-external-data-ids.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { KeyValue } from './key-value'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataExternalDataIDs { - externalDataIdentifiers?: Array; - externalDataAnnotations?: Array; - externalDataIDSimRefs?: { [key: string]: Array; }; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts deleted file mode 100644 index 976e4bfd83..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-results.ts +++ /dev/null @@ -1,29 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { FieldDataReferenceInfo } from './field-data-reference-info'; -import { Origin } from './origin'; -import { DataIdentifier } from './data-identifier'; -import { Extent } from './extent'; -import { ISize } from './i-size'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataFileOperationResults { - dataIdentifierArr?: Array; - externalDataIdentifier?: ExternalDataIdentifier; - iSize?: ISize; - origin?: Origin; - extent?: Extent; - times?: Array; - dependantFunctionInfo?: Array; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts deleted file mode 100644 index 4269ff82b5..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-file-operation-spec.ts +++ /dev/null @@ -1,41 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { Origin } from './origin'; -import { CartesianMesh } from './cartesian-mesh'; -import { KeyValue } from './key-value'; -import { User } from './user'; -import { VariableType } from './variable-type'; -import { Extent } from './extent'; -import { ISize } from './i-size'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataFileOperationSpec { - opType?: number; - shortSpecData?: Array>>; - doubleSpecData?: Array>>; - cartesianMesh?: CartesianMesh; - specEDI?: ExternalDataIdentifier; - varNames?: Array; - variableTypes?: Array; - times?: Array; - owner?: User; - origin?: Origin; - extent?: Extent; - isize?: ISize; - annotation?: string; - sourceSimParamScanJobIndex?: number; - sourceSimDataKey?: KeyValue; - sourceOwner?: User; - fieldDataName?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts deleted file mode 100644 index 25ace3c17f..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-info.ts +++ /dev/null @@ -1,25 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { Origin } from './origin'; -import { DataIdentifier } from './data-identifier'; -import { Extent } from './extent'; -import { ISize } from './i-size'; - - -export interface FieldDataInfo { - extent?: Extent; - origin?: Origin; - isize?: ISize; - dataIdentifier?: Array; - times?: Array; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts deleted file mode 100644 index 140220cb0f..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-no-copy-conflict.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { KeyValue } from './key-value'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataNoCopyConflict { - oldNameNewIDHash?: { [key: string]: ExternalDataIdentifier; }; - oldNameOldExtDataIDKeyHash?: { [key: string]: KeyValue; }; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts deleted file mode 100644 index 22e40b3ca2..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference-info.ts +++ /dev/null @@ -1,24 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { KeyValue } from './key-value'; - - -export interface FieldDataReferenceInfo { - referenceSourceType?: string; - referenceSourceName?: string; - applicationName?: string; - simulationName?: string; - refSourceVersionDate?: string; - funcNames?: Array; - refSourceVersionKey?: KeyValue; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts deleted file mode 100644 index 58acf5cfa4..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-references.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { KeyValue } from './key-value'; -import { ExternalDataIdentifier } from './external-data-identifier'; - - -export interface FieldDataReferences { - externalDataIdentifiers?: Array; - externalDataAnnotations?: Array; - externalDataIDSimRefs?: { [key: string]: Array; }; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/group-access.ts b/webapp-ng/src/app/core/modules/openapi/model/group-access.ts deleted file mode 100644 index d963010a25..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/group-access.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface GroupAccess { - groupid?: number; - description?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/identity-provider.ts b/webapp-ng/src/app/core/modules/openapi/model/identity-provider.ts deleted file mode 100644 index 3a69667da1..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/identity-provider.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export type IdentityProvider = 'AUTH0' | 'KEYCLOAK'; - -export const IdentityProvider = { - Auth0: 'AUTH0' as IdentityProvider, - Keycloak: 'KEYCLOAK' as IdentityProvider -}; - diff --git a/webapp-ng/src/app/core/modules/openapi/model/map-user.ts b/webapp-ng/src/app/core/modules/openapi/model/map-user.ts deleted file mode 100644 index 3338008938..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/map-user.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface MapUser { - userID?: string; - password?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/override-representation.ts b/webapp-ng/src/app/core/modules/openapi/model/override-representation.ts deleted file mode 100644 index 645bfe7ceb..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/override-representation.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface OverrideRepresentation { - name?: string; - type?: string; - expression?: string; - values?: Array; - cardinality?: number; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts b/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts deleted file mode 100644 index 5b2dd937cb..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/save-field-data-from-file.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { Origin } from './origin'; -import { Extent } from './extent'; -import { ISize } from './i-size'; - - -export interface SaveFieldDataFromFile { - shortSpecData?: Array>>; - varNames?: Array; - times?: Array; - origin?: Origin; - extent?: Extent; - isize?: ISize; - annotation?: string; - name?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/simulation-execution-status.ts b/webapp-ng/src/app/core/modules/openapi/model/simulation-execution-status.ts deleted file mode 100644 index a219c89670..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/simulation-execution-status.ts +++ /dev/null @@ -1,28 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { HtcJobID } from './htc-job-id'; - - -export interface SimulationExecutionStatus { - fieldStartDate?: string; - fieldLatestUpdateDate?: string; - fieldEndDate?: string; - fieldComputeHost?: string; - fieldHasData?: boolean; - fieldHtcJobID?: HtcJobID; - computeHost?: string; - endDate?: string; - latestUpdateDate?: string; - startDate?: string; - htcJobID?: HtcJobID; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/simulation-job-status.ts b/webapp-ng/src/app/core/modules/openapi/model/simulation-job-status.ts deleted file mode 100644 index 4ff18b5395..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/simulation-job-status.ts +++ /dev/null @@ -1,48 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { SimulationExecutionStatus } from './simulation-execution-status'; -import { VCSimulationIdentifier } from './vc-simulation-identifier'; -import { SchedulerStatus } from './scheduler-status'; -import { VCellServerID } from './v-cell-server-id'; -import { SimulationMessage } from './simulation-message'; -import { SimulationQueueEntryStatus } from './simulation-queue-entry-status'; - - -export interface SimulationJobStatus { - fieldTimeDateStamp?: string; - fieldVCSimID?: VCSimulationIdentifier; - fieldSubmitDate?: string; - fieldSchedulerStatus?: SchedulerStatus; - fieldTaskID?: number; - fieldSimulationMessage?: SimulationMessage; - fieldServerID?: VCellServerID; - fieldJobIndex?: number; - fieldSimulationQueueEntryStatus?: SimulationQueueEntryStatus; - fieldSimulationExecutionStatus?: SimulationExecutionStatus; - computeHost?: string; - endDate?: string; - jobIndex?: number; - schedulerStatus?: SchedulerStatus; - serverID?: VCellServerID; - simulationExecutionStatus?: SimulationExecutionStatus; - simulationQueueEntryStatus?: SimulationQueueEntryStatus; - startDate?: string; - simulationMessage?: SimulationMessage; - submitDate?: string; - taskID?: number; - timeDateStamp?: string; - vCSimulationIdentifier?: VCSimulationIdentifier; -} -export namespace SimulationJobStatus { -} - - diff --git a/webapp-ng/src/app/core/modules/openapi/model/simulation-queue-entry-status.ts b/webapp-ng/src/app/core/modules/openapi/model/simulation-queue-entry-status.ts deleted file mode 100644 index 3bef98151e..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/simulation-queue-entry-status.ts +++ /dev/null @@ -1,26 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { SimulationQueueID } from './simulation-queue-id'; - - -export interface SimulationQueueEntryStatus { - fieldQueuePriority?: number; - fieldQueueDate?: string; - fieldQueueID?: SimulationQueueID; - queueDate?: string; - queueID?: SimulationQueueID; - queuePriority?: number; -} -export namespace SimulationQueueEntryStatus { -} - - diff --git a/webapp-ng/src/app/core/modules/openapi/model/simulation.ts b/webapp-ng/src/app/core/modules/openapi/model/simulation.ts deleted file mode 100644 index 99214ce7c9..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/simulation.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface Simulation { - name?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts b/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts deleted file mode 100644 index 531b2fe777..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/ucd-info.ts +++ /dev/null @@ -1,29 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { Coordinate } from './coordinate'; - - -export interface UCDInfo { - ucdGridNodes?: Array>>; - ucdMembraneQuads?: Array>; - reducedUCDGridNodesV?: Array; - uCDGridNodes?: Array>>; - uCDMembraneQuads?: Array>; - numVolumeNodesX?: number; - numVolumeNodesY?: number; - numVolumeNodesZ?: number; - numPointsXYZ?: number; - numVolumeNodesXY?: number; - numVolumeCells?: number; - numMembraneCells?: number; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/user-identity.ts b/webapp-ng/src/app/core/modules/openapi/model/user-identity.ts deleted file mode 100644 index 92f489448e..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/user-identity.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface UserIdentity { - id?: number; - userName?: string; - subject?: string; - insertDate?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/user1.ts b/webapp-ng/src/app/core/modules/openapi/model/user1.ts deleted file mode 100644 index e9b8b4a4e8..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/user1.ts +++ /dev/null @@ -1,23 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { KeyValue } from './key-value'; - - -export interface User1 { - userName?: string; - key?: KeyValue; - iD?: KeyValue; - name?: string; - publisher?: boolean; - testAccount?: boolean; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/v-cell-server-id.ts b/webapp-ng/src/app/core/modules/openapi/model/v-cell-server-id.ts deleted file mode 100644 index 4fcf42ebdb..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/v-cell-server-id.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface VCellServerID { - serverID?: string; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts b/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts deleted file mode 100644 index d5c92ad51b..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/version-flag.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface VersionFlag { - versionFlag?: number; - intValue?: number; - archived?: boolean; - current?: boolean; - published?: boolean; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/version.ts b/webapp-ng/src/app/core/modules/openapi/model/version.ts deleted file mode 100644 index 6eff5f51b0..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/version.ts +++ /dev/null @@ -1,37 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { VersionFlag } from './version-flag'; -import { KeyValue } from './key-value'; -import { User } from './user'; -import { GroupAccess } from './group-access'; - - -export interface Version { - versionKey?: KeyValue; - versionName?: string; - versionOwner?: User; - versionGroupAccess?: GroupAccess; - versionBranchPointRef?: KeyValue; - versionBranchID?: number; - versionDate?: string; - versionFlag?: VersionFlag; - versionAnnot?: string; - annot?: string; - branchID?: number; - branchPointRefKey?: KeyValue; - date?: string; - flag?: VersionFlag; - groupAccess?: GroupAccess; - name?: string; - owner?: User; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts b/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts deleted file mode 100644 index 97dc69511a..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/versionable-type-version.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ -import { Version } from './version'; -import { VersionableType } from './versionable-type'; - - -export interface VersionableTypeVersion { - vType?: VersionableType; - version?: Version; -} - diff --git a/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts b/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts deleted file mode 100644 index 6b03bb2b3e..0000000000 --- a/webapp-ng/src/app/core/modules/openapi/model/versionable-type.ts +++ /dev/null @@ -1,24 +0,0 @@ -/** - * VCell API - * VCell API - * - * The version of the OpenAPI document: 1.0.1 - * Contact: vcell_support@uchc.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -export interface VersionableType { - vType?: number; - name?: string; - vClass?: object; - bTopLevel?: boolean; - code?: number; - isTopLevel?: boolean; - typeName?: string; - versionClass?: object; -} - From 74cd384a58c7b3c366141902b00980266f8d712a Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 3 Jan 2025 11:13:49 -0500 Subject: [PATCH 32/37] Revert PyProject to It's Old Form --- python-restclient/pyproject.toml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/python-restclient/pyproject.toml b/python-restclient/pyproject.toml index ec8675c605..6af8dcc9dd 100644 --- a/python-restclient/pyproject.toml +++ b/python-restclient/pyproject.toml @@ -10,12 +10,15 @@ keywords = ["OpenAPI", "OpenAPI-Generator", "VCell API"] include = ["vcell_client/py.typed"] [tool.poetry.dependencies] -python = "^3.7" +python = "3.10.*" urllib3 = ">= 1.25.3" python-dateutil = ">=2.8.2" -pydantic = ">=2" -typing-extensions = ">=4.7.1" +pydantic = ">=2.10.4" +typing-extensions = ">=4.6.0" +pandas = ">=2" +jupyter = "^1.1.1" +requests_oauth2client = ">=1.6.0" [tool.poetry.dev-dependencies] pytest = ">=7.2.1" From 86b335e0f8eb5c814960fb52e2a3cd5f43531c0f Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 6 Jan 2025 10:17:10 -0500 Subject: [PATCH 33/37] Reset Spacing for Field Data Driver Reset the spacing while still keeping the changes I've made. --- .../field/db/FieldDataDBOperationDriver.java | 1052 ++++++++--------- 1 file changed, 511 insertions(+), 541 deletions(-) diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index 6662b5dd3a..cc5ecba508 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -52,495 +52,471 @@ import cbit.vcell.resource.PropertyLoader; import cbit.vcell.simdata.SimulationData; -public class FieldDataDBOperationDriver { - private final static Logger lg = LogManager.getLogger(FieldDataDBOperationDriver.class); - - private static String DATE_FORMAT_STRING = "'DD-MON-YYYY HH24:MI:SS'"; - - private static Connection liveConnection = null; - private static Timer liveConnectionTimer = null; - - private static synchronized void restartLiveConnectionTimer() { - if (liveConnectionTimer == null) { - liveConnectionTimer = - new Timer(5 * 60 * 1000, - new ActionListener() { - public void actionPerformed(ActionEvent e) { - closeConnection(); - } - } - ); - liveConnectionTimer.setRepeats(false); - } - liveConnectionTimer.restart(); - } - - private static synchronized void closeConnection() { +public class FieldDataDBOperationDriver{ + private final static Logger lg = LogManager.getLogger(FieldDataDBOperationDriver.class); + + private static String DATE_FORMAT_STRING = "'DD-MON-YYYY HH24:MI:SS'"; + + private static Connection liveConnection = null; + private static Timer liveConnectionTimer = null; + + private static synchronized void restartLiveConnectionTimer(){ + if(liveConnectionTimer == null){ + liveConnectionTimer = + new Timer(5*60*1000, + new ActionListener(){ + public void actionPerformed(ActionEvent e) { + closeConnection(); + }} + ); + liveConnectionTimer.setRepeats(false); + } + liveConnectionTimer.restart(); + } + private static synchronized void closeConnection(){ // System.err.println("connection Closed"); - if (liveConnection != null) { - try { - liveConnection.close(); - } catch (Exception e) { - lg.error(e.getMessage(), e); - } - liveConnection = null; - } - } - - private static synchronized Connection getConnection() throws Exception { - - restartLiveConnectionTimer(); - - if (liveConnection != null) { + if(liveConnection != null){ + try{liveConnection.close();}catch(Exception e){lg.error(e.getMessage(), e);} + liveConnection = null; + } + } + private static synchronized Connection getConnection() throws Exception{ + + restartLiveConnectionTimer(); + + if(liveConnection != null){ // System.err.println("connection Re-used"); - return liveConnection; - } + return liveConnection; + } // System.err.println("connection Created"); - String dbDriverName = PropertyLoader.getProperty(PropertyLoader.dbDriverName, null); - String dbConnectURL = PropertyLoader.getProperty(PropertyLoader.dbConnectURL, null); - String dbSchemaUser = PropertyLoader.getProperty(PropertyLoader.dbUserid, null); - String dbPassword = PropertyLoader.getSecretValue(PropertyLoader.dbPasswordValue, PropertyLoader.dbPasswordFile); - try { - Class.forName(dbDriverName); - liveConnection = java.sql.DriverManager.getConnection(dbConnectURL, dbSchemaUser, dbPassword); - liveConnection.setReadOnly(true); - return liveConnection; - } catch (Exception e) { - throw new Exception("FieldDataDBOperationDriver: Couldn't get database connection", e); - } - - } - - private static FieldDataDBOperationResults copyNoConflict(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { - //get all current ExtDataIDs - ExternalDataIdentifier[] existingExtDataIDArr = - FieldDataDBOperationDriver.fieldDataDBOperation( - con, keyFactory, user, FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; - //Rename FieldFunc names if necessary - Hashtable newNameOrigNameHash = new Hashtable(); - for (int i = 0; i < fieldDataDBOperationSpec.sourceNames.length; i += 1) { - String newFieldFuncName = fieldDataDBOperationSpec.sourceNames[i]; - while (true) { - boolean bNameConflictExists = false; - for (int j = 0; j < existingExtDataIDArr.length; j += 1) { - if (existingExtDataIDArr[j].getName().equals(newFieldFuncName)) { - bNameConflictExists = true; - break; - } - } - bNameConflictExists = - bNameConflictExists || newNameOrigNameHash.containsKey(newFieldFuncName); - if (!bNameConflictExists) { - newNameOrigNameHash.put(newFieldFuncName, fieldDataDBOperationSpec.sourceNames[i]); - break; - } - newFieldFuncName = TokenMangler.getNextEnumeratedToken(newFieldFuncName); - } - } - //Add new ExternalDataIdentifier (FieldData ID) to DB - //Copy source annotation - FieldDataDBOperationResults sourceUserExtDataInfo = - fieldDataDBOperation(con, keyFactory, user, - FieldDataDBOperationSpec.createGetExtDataIDsSpec( - fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner())); - ExternalDataIdentifier[] sourceUserExtDataIDArr = sourceUserExtDataInfo.extDataIDArr; - Hashtable oldNameNewIDHash = - new Hashtable(); - Hashtable oldNameOldExtDataIDKey = - new Hashtable(); - String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); - for (int i = 0; i < newFieldFuncNamesArr.length; i += 1) { - //find orig annotation - String origAnnotation = - "Copy Field Data name used Field Data function\r\n" + - "Source type: " + fieldDataDBOperationSpec.sourceOwner.getVType().getTypeName() + "\r\n" + - "Source owner: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getOwner().getName() + "\r\n" + - "Source name: " + fieldDataDBOperationSpec.sourceOwner.getVersion().getName() + "\r\n" + - "Original Field Data name: " + newNameOrigNameHash.get(newFieldFuncNamesArr[i]) + "\r\n" + - "New Field Data name: " + newFieldFuncNamesArr[i] + "\r\n" + - "Source Annotation: " + newFieldFuncNamesArr[i] + "\r\n"; - for (int j = 0; j < sourceUserExtDataInfo.extDataAnnotArr.length; j += 1) { - String originalName = newNameOrigNameHash.get(newFieldFuncNamesArr[i]); - if (sourceUserExtDataIDArr[j].getName().equals(originalName)) { - oldNameOldExtDataIDKey.put(originalName, sourceUserExtDataInfo.extDataIDArr[j].getKey()); - origAnnotation += sourceUserExtDataInfo.extDataAnnotArr[j]; - break; - } - } - // - FieldDataDBOperationResults fieldDataDBOperationResults = - fieldDataDBOperation(con, keyFactory, user, - FieldDataDBOperationSpec.createSaveNewExtDataIDSpec( - user, newFieldFuncNamesArr[i], origAnnotation)); + String dbDriverName = PropertyLoader.getProperty(PropertyLoader.dbDriverName, null); + String dbConnectURL = PropertyLoader.getProperty(PropertyLoader.dbConnectURL, null); + String dbSchemaUser = PropertyLoader.getProperty(PropertyLoader.dbUserid, null); + String dbPassword = PropertyLoader.getSecretValue(PropertyLoader.dbPasswordValue, PropertyLoader.dbPasswordFile); + try{ + Class.forName(dbDriverName); + liveConnection = java.sql.DriverManager.getConnection(dbConnectURL,dbSchemaUser,dbPassword); + liveConnection.setReadOnly(true); + return liveConnection; + }catch(Exception e){ + throw new Exception("FieldDataDBOperationDriver: Couldn't get database connection",e); + } + + } + + private static FieldDataDBOperationResults copyNoConflict(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { + //get all current ExtDataIDs + ExternalDataIdentifier[] existingExtDataIDArr = + FieldDataDBOperationDriver.fieldDataDBOperation( + con, keyFactory, user,FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; + //Rename FieldFunc names if necessary + Hashtable newNameOrigNameHash = new Hashtable(); + for(int i=0;i oldNameNewIDHash = + new Hashtable(); + Hashtable oldNameOldExtDataIDKey = + new Hashtable(); + String[] newFieldFuncNamesArr = newNameOrigNameHash.keySet().toArray(new String[0]); + for(int i=0;i> getAllExternalDataIdentifiers() throws DataAccessException { - - String sql = - "SELECT " + - ExternalDataTable.table.getTableName() + ".*" + "," + - UserTable.table.userid.getQualifiedColName() + - " FROM " + - ExternalDataTable.table.getTableName() + "," + - UserTable.table.getTableName() + - " WHERE " + - UserTable.table.id.getQualifiedColName() + " = " + - ExternalDataTable.table.ownerRef.getQualifiedColName(); - Statement stmt = null; - HashMap> allUserExtDataIDH = - new HashMap>(); - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sql); - while (rset.next()) { - ExternalDataIdentifier extDataID = - ExternalDataTable.table.getExternalDataIdentifier(rset); - Vector userExtDataIDV = - allUserExtDataIDH.get(extDataID.getOwner()); - if (userExtDataIDV == null) { - userExtDataIDV = new Vector(); - allUserExtDataIDH.put(extDataID.getOwner(), userExtDataIDV); - } - userExtDataIDV.add(extDataID); - } - } catch (Exception e) { - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getAllExternalDataIdentifiers", e); - } finally { - if (stmt != null) { - try { - stmt.close(); - } catch (Exception e) { - lg.error(e.getMessage(), e); - } - } - } - return allUserExtDataIDH; - } - - public static synchronized HashMap getFunctionFileNamesAndSimKeys(User user) - throws DataAccessException { - - String sql = - "SELECT " + - SimulationJobTable.table.simRef.getQualifiedColName() + "," + - SimulationJobTable.table.jobIndex.getQualifiedColName() + - " FROM " + - SimulationJobTable.table.getTableName() + "," + - SimulationTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + " = " + SimulationJobTable.table.simRef.getQualifiedColName() + - " UNION " + - " SELECT " + - SimulationTable.table.id.getQualifiedColName() + "," + - "TO_NUMBER(NULL) " +//SimulationJobTable.table.jobIndex.getUnqualifiedColName()+ - " FROM " + - SimulationTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() + "=" + user.getID() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + - " NOT IN (SELECT " + SimulationJobTable.table.simRef.getQualifiedColName() + - " FROM " + SimulationJobTable.table.getTableName() + " )" + - " UNION " + - " SELECT " + - ExternalDataTable.table.id.getQualifiedColName() + "," + - "TO_NUMBER(0) " + - " FROM " + - ExternalDataTable.table.getTableName() + - " WHERE " + - ExternalDataTable.table.ownerRef.getQualifiedColName() + "=" + user.getID(); - - - Statement stmt = null; - HashMap functionNamesH = new HashMap(); - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sql); - while (rset.next()) { - KeyValue simKey = new KeyValue(rset.getBigDecimal(1)); - BigDecimal jobIndex = rset.getBigDecimal(2); - boolean isOldStyle = rset.wasNull(); - functionNamesH.put( - SimulationData.createCanonicalFunctionsFileName( - simKey, (isOldStyle ? 0 : jobIndex.intValue()), isOldStyle), - simKey - ); - } - } catch (Exception e) { - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getFunctionFileNamesAndSimKeys", e); - } finally { - if (stmt != null) { - try { - stmt.close(); - } catch (Exception e) { - lg.error(e.getMessage(), e); - } - } - } - return functionNamesH; - } - - public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo getModelDescriptionForSimulation(User user, KeyValue simulationKey) - throws DataAccessException { - - String sqlMathModel = - "SELECT " + - MathModelTable.table.name.getQualifiedColName() + "," + - SimulationTable.table.name.getQualifiedColName() + "," + - "TO_CHAR(" + MathModelTable.table.versionDate.getQualifiedColName() + "," + DATE_FORMAT_STRING + ")" + "," + - MathModelTable.table.id.getQualifiedColName() + - " FROM " + - SimulationTable.table.getTableName() + "," + - MathModelSimulationLinkTable.table.getTableName() + "," + - MathModelTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + - " AND (" + - SimulationTable.table.id.getQualifiedColName() + " = " + simulationKey.toString() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + " = " + - MathModelSimulationLinkTable.table.simRef.getQualifiedColName() + - " AND " + - MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName() + " = " + - MathModelTable.table.id.getQualifiedColName() + - ") OR (" + - SimulationTable.table.versionParentSimRef.getQualifiedColName() + " IS NOT NULL" + - " AND " + - SimulationTable.table.versionParentSimRef.getQualifiedColName() + " = " + simulationKey.toString() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + " = " + - MathModelSimulationLinkTable.table.simRef.getQualifiedColName() + - " AND " + - MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName() + " = " + - MathModelTable.table.id.getQualifiedColName() + - ")"; + String origFieldFuncName = + newNameOrigNameHash.get(fieldDataDBOperationResults.extDataID.getName()); + if(origFieldFuncName == null){ + throw new DataAccessException("couldn't find original FieldFuncName using new ExternalDataId"); + } + oldNameNewIDHash.put(origFieldFuncName,fieldDataDBOperationResults.extDataID); + } + + FieldDataDBOperationResults fieldDataDBOperationResults = + new FieldDataDBOperationResults(); + fieldDataDBOperationResults.oldNameNewIDHash = oldNameNewIDHash; + fieldDataDBOperationResults.oldNameOldExtDataIDKeyHash = oldNameOldExtDataIDKey; + return fieldDataDBOperationResults; + } + + private static FieldDataDBOperationResults getExtraDataIDs(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + String sql; + ResultSet rset; + if(fieldDataDBOperationSpec.bIncludeSimRefs){ + sql = "SELECT "+ + ExternalDataTable.table.id.getQualifiedColName()+","+ + ExternalDataTable.table.externalDataName.getQualifiedColName()+","+ + ExternalDataTable.table.ownerRef.getQualifiedColName()+","+ + UserTable.table.userid.getQualifiedColName()+ ","+ + SimulationTable.table.id.getQualifiedColName() + + " FROM " + + ExternalDataTable.table.getTableName() + ","+ + MathDescTable.table.getTableName() + ","+ + SimulationTable.table.getTableName() + ","+ + MathDescExternalDataLinkTable.table.getTableName() + ","+ + UserTable.table.getTableName()+ + " WHERE " + + UserTable.table.id.getQualifiedColName() + " = " + + fieldDataDBOperationSpec.owner.getID() + + " AND "+ + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName() + + " AND "+ + ExternalDataTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.extDataRef.getQualifiedColName() + + " AND "+ + MathDescTable.table.id.getQualifiedColName() + " = " + + MathDescExternalDataLinkTable.table.mathDescRef.getQualifiedColName() + + " AND "+ + MathDescTable.table.id.getQualifiedColName() + " = " + + SimulationTable.table.mathRef.getQualifiedColName(); + }else{ + sql = "SELECT "+ + ExternalDataTable.table.getTableName()+".*"+","+ + UserTable.table.userid.getQualifiedColName()+ + " FROM " + + ExternalDataTable.table.getTableName() + ","+ + UserTable.table.getTableName()+ + " WHERE " + + ExternalDataTable.table.ownerRef + "=" +fieldDataDBOperationSpec.owner.getID() + + " AND "+ + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName(); + } + + Statement stmt = con.createStatement(); + Vector extDataIDV = new Vector(); + Vector extDataAnnotV = new Vector(); + HashMap> extDataIDSimRefsH = null; + try { + rset = stmt.executeQuery(sql); + while (rset.next()) { + ExternalDataIdentifier extDataID = + ExternalDataTable.table.getExternalDataIdentifier(rset); + if( !fieldDataDBOperationSpec.bIncludeSimRefs && + !extDataIDV.contains(extDataID)){ + extDataIDV.add(extDataID); + extDataAnnotV.add(ExternalDataTable.table.getExternalDataAnnot(rset)); + } + if(fieldDataDBOperationSpec.bIncludeSimRefs){ + if(extDataIDSimRefsH == null){ + extDataIDSimRefsH = + new HashMap>(); + } + Vector simRefV = + extDataIDSimRefsH.get(extDataID); + if(simRefV == null){ + simRefV = new Vector(); + extDataIDSimRefsH.put(extDataID, simRefV); + } + simRefV.add( + new KeyValue( + rset.getBigDecimal(SimulationTable.table.id.getUnqualifiedColName()))); + } + } + } finally { + stmt.close(); + } + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataIDArr = extDataIDV.toArray(new ExternalDataIdentifier[extDataIDV.size()]); + fieldDataDBOperationResults.extDataAnnotArr = extDataAnnotV.toArray(new String[extDataAnnotV.size()]); + fieldDataDBOperationResults.extdataIDAndSimRefH = extDataIDSimRefsH; + return fieldDataDBOperationResults; + } + + private static FieldDataDBOperationResults saveExtraDataID(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException { + if(!fieldDataDBOperationSpec.newExtDataIDName.equals( + TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))){ + throw new DataAccessException("Error inserting Field Data name "+ + fieldDataDBOperationSpec.newExtDataIDName+"\n"+ + "Field Data names can contain only letters,digits and underscores"); + } + + KeyValue newKey = keyFactory.getNewKey(con); + String sql = + "INSERT INTO "+ExternalDataTable.table.getTableName()+" "+ + ExternalDataTable.table.getSQLColumnList()+ + " VALUES "+ + ExternalDataTable.table.getSQLValueList( + newKey,user, + fieldDataDBOperationSpec.newExtDataIDName, + fieldDataDBOperationSpec.annotation); + + DbDriver.updateCleanSQL(con,sql); + ExternalDataIdentifier[] fdiArr = + FieldDataDBOperationDriver.fieldDataDBOperation( + con, keyFactory, user,FieldDataDBOperationSpec.createGetExtDataIDsSpec(user)).extDataIDArr; + for (int i = 0; i < fdiArr.length; i++) { + if(fdiArr[i].getName().equals(fieldDataDBOperationSpec.newExtDataIDName)){ + FieldDataDBOperationResults fieldDataDBOperationResults = new FieldDataDBOperationResults(); + fieldDataDBOperationResults.extDataID = fdiArr[i];; + return fieldDataDBOperationResults; + } + } + throw new DataAccessException( + "Unable to retrieve inserted ExternalDataIdentifier "+ + fieldDataDBOperationSpec.newExtDataIDName); + } + + private static FieldDataDBOperationResults deleteFieldData(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException { + String sql = + "DELETE" + " FROM " + ExternalDataTable.table.getTableName() + + " WHERE " + + ExternalDataTable.table.ownerRef + " = " + user.getID() + + " AND " + + ExternalDataTable.table.id + " = " + fieldDataDBOperationSpec.specEDI.getKey().toString(); + + DbDriver.updateCleanSQL(con,sql); + + return new FieldDataDBOperationResults(); + } + + public static FieldDataDBOperationResults fieldDataDBOperation(Connection con, KeyFactory keyFactory, User user, + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws SQLException, DataAccessException { + + if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_COPY_NO_CONFLICT){ + return copyNoConflict(con, keyFactory, user, fieldDataDBOperationSpec); + }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_GETEXTDATAIDS){ + return getExtraDataIDs(con, keyFactory, user, fieldDataDBOperationSpec); + }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_SAVEEXTDATAID){ + return saveExtraDataID(con, keyFactory, user, fieldDataDBOperationSpec); + }else if(fieldDataDBOperationSpec.opType == FieldDataDBOperationSpec.FDDBOS_DELETE){ + return deleteFieldData(con, keyFactory, user, fieldDataDBOperationSpec); + } + throw new DataAccessException("Unknown FieldDataDBOperation "+fieldDataDBOperationSpec.opType); + } + + public static synchronized HashMap> getAllExternalDataIdentifiers() throws DataAccessException{ + + String sql = + "SELECT "+ + ExternalDataTable.table.getTableName()+".*"+","+ + UserTable.table.userid.getQualifiedColName()+ + " FROM " + + ExternalDataTable.table.getTableName() + ","+ + UserTable.table.getTableName()+ + " WHERE " + + UserTable.table.id.getQualifiedColName() + " = " + + ExternalDataTable.table.ownerRef.getQualifiedColName(); + Statement stmt = null; + HashMap> allUserExtDataIDH = + new HashMap>(); + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sql); + while (rset.next()) { + ExternalDataIdentifier extDataID = + ExternalDataTable.table.getExternalDataIdentifier(rset); + Vector userExtDataIDV = + allUserExtDataIDH.get(extDataID.getOwner()); + if(userExtDataIDV == null){ + userExtDataIDV = new Vector(); + allUserExtDataIDH.put(extDataID.getOwner(), userExtDataIDV); + } + userExtDataIDV.add(extDataID); + } + }catch(Exception e){ + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getAllExternalDataIdentifiers",e); + }finally { + if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} + } + return allUserExtDataIDH; + } + + public static synchronized HashMap getFunctionFileNamesAndSimKeys(User user) + throws DataAccessException{ + + String sql = + "SELECT "+ + SimulationJobTable.table.simRef.getQualifiedColName()+","+ + SimulationJobTable.table.jobIndex.getQualifiedColName()+ + " FROM " + + SimulationJobTable.table.getTableName()+","+ + SimulationTable.table.getTableName()+ + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + + " AND "+ + SimulationTable.table.id.getQualifiedColName()+ " = " +SimulationJobTable.table.simRef.getQualifiedColName()+ + " UNION " + + " SELECT " + + SimulationTable.table.id.getQualifiedColName()+","+ + "TO_NUMBER(NULL) "+//SimulationJobTable.table.jobIndex.getUnqualifiedColName()+ + " FROM " + + SimulationTable.table.getTableName()+ + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName()+ "=" +user.getID()+ + " AND " + + SimulationTable.table.id.getQualifiedColName()+ + " NOT IN (SELECT " +SimulationJobTable.table.simRef.getQualifiedColName()+ + " FROM " +SimulationJobTable.table.getTableName()+" )"+ + " UNION " + + " SELECT " + + ExternalDataTable.table.id.getQualifiedColName()+","+ + "TO_NUMBER(0) "+ + " FROM " + + ExternalDataTable.table.getTableName()+ + " WHERE " + + ExternalDataTable.table.ownerRef.getQualifiedColName()+ "=" +user.getID(); + + + Statement stmt = null; + HashMap functionNamesH = new HashMap(); + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sql); + while (rset.next()) { + KeyValue simKey = new KeyValue(rset.getBigDecimal(1)); + BigDecimal jobIndex = rset.getBigDecimal(2); + boolean isOldStyle = rset.wasNull(); + functionNamesH.put( + SimulationData.createCanonicalFunctionsFileName( + simKey, (isOldStyle?0:jobIndex.intValue()), isOldStyle), + simKey + ); + } + }catch(Exception e){ + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getFunctionFileNamesAndSimKeys",e); + }finally { + if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} + } + return functionNamesH; +} - String sqlBioModel = - "SELECT " + - BioModelTable.table.name.getQualifiedColName() + "," + - SimContextTable.table.name.getQualifiedColName() + "," + - SimulationTable.table.name.getQualifiedColName() + "," + - "TO_CHAR(" + BioModelTable.table.versionDate.getQualifiedColName() + "," + DATE_FORMAT_STRING + ")" + "," + - BioModelTable.table.id.getQualifiedColName() + - " FROM " + - SimulationTable.table.getTableName() + "," + - BioModelSimulationLinkTable.table.getTableName() + "," + - SimContextTable.table.getTableName() + "," + - BioModelSimContextLinkTable.table.getTableName() + "," + - BioModelTable.table.getTableName() + - " WHERE " + - SimulationTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + - " AND (" + - SimulationTable.table.id.getQualifiedColName() + " = " + simulationKey.toString() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + " = " + - BioModelSimulationLinkTable.table.simRef.getQualifiedColName() + - " AND " + - BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName() + " = " + - BioModelTable.table.id.getQualifiedColName() + - " AND " + - BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName() + " = " + - BioModelTable.table.id.getQualifiedColName() + - " AND " + - SimContextTable.table.id.getQualifiedColName() + " = " + - BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName() + - " AND " + - SimContextTable.table.mathRef.getQualifiedColName() + " = " + - SimulationTable.table.mathRef.getQualifiedColName() + - ") OR (" + - SimulationTable.table.versionParentSimRef.getQualifiedColName() + " IS NOT NULL" + - " AND " + - SimulationTable.table.versionParentSimRef.getQualifiedColName() + " = " + simulationKey.toString() + - " AND " + - SimulationTable.table.id.getQualifiedColName() + " = " + - BioModelSimulationLinkTable.table.simRef.getQualifiedColName() + - " AND " + - BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName() + " = " + - BioModelTable.table.id.getQualifiedColName() + - " AND " + - BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName() + " = " + - BioModelTable.table.id.getQualifiedColName() + - " AND " + - SimContextTable.table.id.getQualifiedColName() + " = " + - BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName() + - " AND " + - SimContextTable.table.mathRef.getQualifiedColName() + " = " + - SimulationTable.table.mathRef.getQualifiedColName() + - ")"; + public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo getModelDescriptionForSimulation(User user,KeyValue simulationKey) + throws DataAccessException{ + + String sqlMathModel = + "SELECT "+ + MathModelTable.table.name.getQualifiedColName()+","+ + SimulationTable.table.name.getQualifiedColName() +","+ + "TO_CHAR("+MathModelTable.table.versionDate.getQualifiedColName()+","+DATE_FORMAT_STRING+")"+","+ + MathModelTable.table.id.getQualifiedColName()+ + " FROM " + + SimulationTable.table.getTableName()+","+ + MathModelSimulationLinkTable.table.getTableName()+","+ + MathModelTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + + " AND ("+ + SimulationTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString()+ + " AND "+ + SimulationTable.table.id.getQualifiedColName()+ " = " + + MathModelSimulationLinkTable.table.simRef.getQualifiedColName()+ + " AND "+ + MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName()+" = "+ + MathModelTable.table.id.getQualifiedColName()+ + ") OR ("+ + SimulationTable.table.versionParentSimRef.getQualifiedColName()+" IS NOT NULL"+ + " AND "+ + SimulationTable.table.versionParentSimRef.getQualifiedColName()+" = "+simulationKey.toString()+ + " AND "+ + SimulationTable.table.id.getQualifiedColName()+ " = " + + MathModelSimulationLinkTable.table.simRef.getQualifiedColName()+ + " AND "+ + MathModelSimulationLinkTable.table.mathModelRef.getQualifiedColName()+" = "+ + MathModelTable.table.id.getQualifiedColName()+ + ")"; + + String sqlBioModel = + "SELECT "+ + BioModelTable.table.name.getQualifiedColName()+","+ + SimContextTable.table.name.getQualifiedColName()+","+ + SimulationTable.table.name.getQualifiedColName() +","+ + "TO_CHAR("+BioModelTable.table.versionDate.getQualifiedColName()+","+DATE_FORMAT_STRING+")"+","+ + BioModelTable.table.id.getQualifiedColName()+ + " FROM " + + SimulationTable.table.getTableName()+","+ + BioModelSimulationLinkTable.table.getTableName()+","+ + SimContextTable.table.getTableName()+","+ + BioModelSimContextLinkTable.table.getTableName()+","+ + BioModelTable.table.getTableName() + + " WHERE " + + SimulationTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + + " AND ("+ + SimulationTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString()+ + " AND "+ + SimulationTable.table.id.getQualifiedColName()+ " = " + + BioModelSimulationLinkTable.table.simRef.getQualifiedColName()+ + " AND "+ + BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ + BioModelTable.table.id.getQualifiedColName()+ + " AND "+ + BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ + BioModelTable.table.id.getQualifiedColName() + + " AND "+ + SimContextTable.table.id.getQualifiedColName()+ " = " + + BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName()+ + " AND "+ + SimContextTable.table.mathRef.getQualifiedColName()+" = "+ + SimulationTable.table.mathRef.getQualifiedColName()+ + ") OR ("+ + SimulationTable.table.versionParentSimRef.getQualifiedColName()+" IS NOT NULL"+ + " AND "+ + SimulationTable.table.versionParentSimRef.getQualifiedColName()+" = "+simulationKey.toString()+ + " AND "+ + SimulationTable.table.id.getQualifiedColName()+ " = " + + BioModelSimulationLinkTable.table.simRef.getQualifiedColName()+ + " AND "+ + BioModelSimulationLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ + BioModelTable.table.id.getQualifiedColName()+ + " AND "+ + BioModelSimContextLinkTable.table.bioModelRef.getQualifiedColName()+" = "+ + BioModelTable.table.id.getQualifiedColName() + + " AND "+ + SimContextTable.table.id.getQualifiedColName()+ " = " + + BioModelSimContextLinkTable.table.simContextRef.getQualifiedColName()+ + " AND "+ + SimContextTable.table.mathRef.getQualifiedColName()+" = "+ + SimulationTable.table.mathRef.getQualifiedColName()+ + ")"; // OR // (vc_simulation.parentsimref is not null @@ -552,61 +528,55 @@ public static synchronized FieldDataFileOperationResults.FieldDataReferenceInfo // AND vc_simcontext.mathref = vc_simulation.mathref // ) - String sqlFieldData = - "SELECT " + - ExternalDataTable.table.externalDataName.getQualifiedColName() + - " FROM " + - ExternalDataTable.table.getTableName() + - " WHERE " + - ExternalDataTable.table.ownerRef.getQualifiedColName() + " = " + user.getID() + - " AND " + - ExternalDataTable.table.id.getQualifiedColName() + " = " + simulationKey.toString(); - - Statement stmt = null; - FieldDataFileOperationResults.FieldDataReferenceInfo fieldDataRefInfo = null; - try { - stmt = getConnection().createStatement(); - ResultSet rset = stmt.executeQuery(sqlMathModel); - if (rset.next()) { - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = VersionableType.MathModelMetaData.getTypeName(); - fieldDataRefInfo.referenceSourceName = rset.getString(1); - fieldDataRefInfo.simulationName = rset.getString(2); - fieldDataRefInfo.refSourceVersionDate = rset.getString(3); - fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(4)); - } else { - rset.close(); - rset = stmt.executeQuery(sqlBioModel); - if (rset.next()) { - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = VersionableType.BioModelMetaData.getTypeName(); - fieldDataRefInfo.referenceSourceName = rset.getString(1); - fieldDataRefInfo.applicationName = rset.getString(2); - fieldDataRefInfo.simulationName = rset.getString(3); - fieldDataRefInfo.refSourceVersionDate = rset.getString(4); - fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(5)); - } else { - rset.close(); - rset = stmt.executeQuery(sqlFieldData); - if (rset.next()) { - fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); - fieldDataRefInfo.referenceSourceType = FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME; - fieldDataRefInfo.referenceSourceName = rset.getString(1); - } - } - } - } catch (Exception e) { - lg.error(e.getMessage(), e); - throw new DataAccessException("Error: getModelDescriptionForSimulation", e); - } finally { - if (stmt != null) { - try { - stmt.close(); - } catch (Exception e) { - lg.error(e.getMessage(), e); - } - } - } - return fieldDataRefInfo; - } + String sqlFieldData = + "SELECT "+ + ExternalDataTable.table.externalDataName.getQualifiedColName()+ + " FROM " + + ExternalDataTable.table.getTableName()+ + " WHERE " + + ExternalDataTable.table.ownerRef.getQualifiedColName() +" = " + user.getID() + + " AND "+ + ExternalDataTable.table.id.getQualifiedColName()+ " = " +simulationKey.toString(); + + Statement stmt = null; + FieldDataFileOperationResults.FieldDataReferenceInfo fieldDataRefInfo = null; + try { + stmt = getConnection().createStatement(); + ResultSet rset = stmt.executeQuery(sqlMathModel); + if(rset.next()){ + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = VersionableType.MathModelMetaData.getTypeName(); + fieldDataRefInfo.referenceSourceName = rset.getString(1); + fieldDataRefInfo.simulationName = rset.getString(2); + fieldDataRefInfo.refSourceVersionDate = rset.getString(3); + fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(4)); + }else{ + rset.close(); + rset = stmt.executeQuery(sqlBioModel); + if(rset.next()){ + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = VersionableType.BioModelMetaData.getTypeName(); + fieldDataRefInfo.referenceSourceName = rset.getString(1); + fieldDataRefInfo.applicationName = rset.getString(2); + fieldDataRefInfo.simulationName = rset.getString(3); + fieldDataRefInfo.refSourceVersionDate = rset.getString(4); + fieldDataRefInfo.refSourceVersionKey = new KeyValue(rset.getBigDecimal(5)); + }else{ + rset.close(); + rset = stmt.executeQuery(sqlFieldData); + if(rset.next()){ + fieldDataRefInfo = new FieldDataFileOperationResults.FieldDataReferenceInfo(); + fieldDataRefInfo.referenceSourceType = FieldDataFileOperationResults.FieldDataReferenceInfo.FIELDDATATYPENAME; + fieldDataRefInfo.referenceSourceName = rset.getString(1); + } + } + } + }catch(Exception e){ + lg.error(e.getMessage(), e); + throw new DataAccessException("Error: getModelDescriptionForSimulation",e); + }finally { + if(stmt != null){try{stmt.close();}catch(Exception e){lg.error(e.getMessage(), e);}} + } + return fieldDataRefInfo; +} } From e9fd2222fa4c613a54595e9f2fca5ecb95120f95 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 6 Jan 2025 12:38:48 -0500 Subject: [PATCH 34/37] Add SQL Exception --- .../java/cbit/vcell/field/db/FieldDataDBOperationDriver.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java index cc5ecba508..1553f6d46b 100644 --- a/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java +++ b/vcell-server/src/main/java/cbit/vcell/field/db/FieldDataDBOperationDriver.java @@ -269,7 +269,7 @@ private static FieldDataDBOperationResults getExtraDataIDs(Connection con, KeyFa } private static FieldDataDBOperationResults saveExtraDataID(Connection con, KeyFactory keyFactory, User user, - FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException { + FieldDataDBOperationSpec fieldDataDBOperationSpec) throws DataAccessException, SQLException { if(!fieldDataDBOperationSpec.newExtDataIDName.equals( TokenMangler.fixTokenStrict(fieldDataDBOperationSpec.newExtDataIDName))){ throw new DataAccessException("Error inserting Field Data name "+ From dbd1742a033d9ca7ecbad9411f6a4097cd2fc4fb Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Fri, 10 Jan 2025 12:45:31 -0500 Subject: [PATCH 35/37] Clean Up Broken Imports Imports when rebasing off of master got mis-mangled. --- .../vcell/field/FieldDataDBOperationResults.java | 1 - .../field/io/FieldDataFileOperationResults.java | 1 - .../field/io/FieldDataFileOperationSpec.java | 1 - .../client/LocalUserMetaDbServerMessaging.java | 1 - .../bootstrap/LocalVCellConnectionFactory.java | 15 --------------- 5 files changed, 19 deletions(-) diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java index 6bee69fd19..22e11a9a3a 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java @@ -15,7 +15,6 @@ import java.util.stream.Collectors; import org.vcell.restclient.model.FieldDataReference; -import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.document.ExternalDataIdentifier; import org.vcell.util.document.KeyValue; import org.vcell.util.document.User; diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java index 170455b25c..97f08fee18 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationResults.java @@ -11,7 +11,6 @@ package cbit.vcell.field.io; import cbit.vcell.simdata.DataIdentifier; -import org.vcell.restclient.model.FieldDataInfo; import org.vcell.restclient.model.FieldDataSaveResults; import org.vcell.restclient.model.FieldDataShape; import org.vcell.util.Extent; diff --git a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java index dd6ee3ad09..461c570309 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java +++ b/vcell-core/src/main/java/cbit/vcell/field/io/FieldDataFileOperationSpec.java @@ -11,7 +11,6 @@ package cbit.vcell.field.io; import org.vcell.restclient.model.AnalyzedResultsFromFieldData; -import org.vcell.restclient.model.FieldDataInfo; import org.vcell.util.Extent; import org.vcell.util.ISize; import org.vcell.util.Origin; diff --git a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java index 5914584c04..b890111c97 100644 --- a/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java +++ b/vcell-core/src/main/java/cbit/vcell/message/server/bootstrap/client/LocalUserMetaDbServerMessaging.java @@ -19,7 +19,6 @@ import org.apache.logging.log4j.Logger; import org.vcell.api.client.VCellApiClient; import org.vcell.restclient.model.FieldDataReference; -import org.vcell.restclient.model.FieldDataReferences; import org.vcell.util.BigString; import org.vcell.util.DataAccessException; import org.vcell.util.ObjectNotFoundException; diff --git a/vcell-server/src/main/java/cbit/vcell/message/server/bootstrap/LocalVCellConnectionFactory.java b/vcell-server/src/main/java/cbit/vcell/message/server/bootstrap/LocalVCellConnectionFactory.java index 8f441136d8..02dd510bca 100644 --- a/vcell-server/src/main/java/cbit/vcell/message/server/bootstrap/LocalVCellConnectionFactory.java +++ b/vcell-server/src/main/java/cbit/vcell/message/server/bootstrap/LocalVCellConnectionFactory.java @@ -11,13 +11,9 @@ package cbit.vcell.message.server.bootstrap; import cbit.vcell.export.server.ExportServiceImpl; -import cbit.vcell.message.server.bootstrap.client.LocalVCellConnectionMessaging; import cbit.vcell.message.server.dispatcher.SimulationDatabaseDirect; import cbit.vcell.modeldb.AdminDBTopLevel; -import cbit.vcell.modeldb.ApiAccessToken; -import cbit.vcell.modeldb.ApiClient; import cbit.vcell.modeldb.DatabaseServerImpl; -import cbit.vcell.resource.NativeLib; import cbit.vcell.resource.PropertyLoader; import cbit.vcell.server.Auth0ConnectionUtils; import cbit.vcell.server.ConnectionException; @@ -25,32 +21,21 @@ import cbit.vcell.server.VCellConnectionFactory; import cbit.vcell.simdata.Cachetable; import cbit.vcell.simdata.DataSetControllerImpl; -import com.nimbusds.oauth2.sdk.ParseException; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.vcell.api.client.VCellApiClient; import org.vcell.db.ConnectionFactory; import org.vcell.db.DatabaseService; import org.vcell.db.KeyFactory; -import org.vcell.restclient.ApiException; -import org.vcell.restclient.model.AccesTokenRepresentationRecord; -import org.vcell.util.AuthenticationException; import org.vcell.util.DataAccessException; -import org.vcell.util.ObjectNotFoundException; -import org.vcell.util.document.KeyValue; -import org.vcell.util.document.User; import org.vcell.util.document.UserLoginInfo; import java.io.File; import java.io.FileNotFoundException; -import java.io.IOException; -import java.net.URISyntaxException; import java.security.KeyManagementException; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.sql.SQLException; -import java.util.Date; -import java.util.List; /** * This type was created in VisualAge. From 6c440d91d11b84da68f9eb79481bd2efbedbd59d Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 13 Jan 2025 08:24:51 -0500 Subject: [PATCH 36/37] Make the Field Data Ref Object Plural By specifying that the field data references is plural, it helps clarify as to what would be returned from the API. --- python-restclient/docs/FieldDataReference.md | 2 +- .../models/field_data_reference.py | 14 +++--- tools/openapi.yaml | 2 +- .../field/FieldDataDBOperationResults.java | 2 +- .../handlers/FieldData/FieldDataResource.java | 2 +- .../restq/apiclient/FieldDataAPITest.java | 2 +- vcell-restclient/.openapi-generator/FILES | 37 -------------- vcell-restclient/api/openapi.yaml | 4 +- vcell-restclient/docs/FieldDataReference.md | 2 +- .../restclient/model/FieldDataReference.java | 50 +++++++++---------- .../openapi/model/field-data-reference.ts | 2 +- 11 files changed, 41 insertions(+), 78 deletions(-) diff --git a/python-restclient/docs/FieldDataReference.md b/python-restclient/docs/FieldDataReference.md index defad764b4..7643b4772a 100644 --- a/python-restclient/docs/FieldDataReference.md +++ b/python-restclient/docs/FieldDataReference.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **external_data_identifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] **external_data_annotation** | **str** | | [optional] -**external_data_id_sim_ref** | [**List[KeyValue]**](KeyValue.md) | | [optional] +**external_data_id_sim_refs** | [**List[KeyValue]**](KeyValue.md) | | [optional] ## Example diff --git a/python-restclient/vcell_client/models/field_data_reference.py b/python-restclient/vcell_client/models/field_data_reference.py index e2baf64494..670cdc43b0 100644 --- a/python-restclient/vcell_client/models/field_data_reference.py +++ b/python-restclient/vcell_client/models/field_data_reference.py @@ -35,8 +35,8 @@ class FieldDataReference(BaseModel): """ # noqa: E501 external_data_identifier: Optional[ExternalDataIdentifier] = Field(default=None, alias="externalDataIdentifier") external_data_annotation: Optional[StrictStr] = Field(default=None, alias="externalDataAnnotation") - external_data_id_sim_ref: Optional[List[KeyValue]] = Field(default=None, alias="externalDataIDSimRef") - __properties: ClassVar[List[str]] = ["externalDataIdentifier", "externalDataAnnotation", "externalDataIDSimRef"] + external_data_id_sim_refs: Optional[List[KeyValue]] = Field(default=None, alias="externalDataIDSimRefs") + __properties: ClassVar[List[str]] = ["externalDataIdentifier", "externalDataAnnotation", "externalDataIDSimRefs"] model_config = { "populate_by_name": True, @@ -77,13 +77,13 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of external_data_identifier if self.external_data_identifier: _dict['externalDataIdentifier'] = self.external_data_identifier.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in external_data_id_sim_ref (list) + # override the default output from pydantic by calling `to_dict()` of each item in external_data_id_sim_refs (list) _items = [] - if self.external_data_id_sim_ref: - for _item in self.external_data_id_sim_ref: + if self.external_data_id_sim_refs: + for _item in self.external_data_id_sim_refs: if _item: _items.append(_item.to_dict()) - _dict['externalDataIDSimRef'] = _items + _dict['externalDataIDSimRefs'] = _items return _dict @classmethod @@ -103,7 +103,7 @@ def from_dict(cls, obj: Dict) -> Self: _obj = cls.model_validate({ "externalDataIdentifier": ExternalDataIdentifier.from_dict(obj.get("externalDataIdentifier")) if obj.get("externalDataIdentifier") is not None else None, "externalDataAnnotation": obj.get("externalDataAnnotation"), - "externalDataIDSimRef": [KeyValue.from_dict(_item) for _item in obj.get("externalDataIDSimRef")] if obj.get("externalDataIDSimRef") is not None else None + "externalDataIDSimRefs": [KeyValue.from_dict(_item) for _item in obj.get("externalDataIDSimRefs")] if obj.get("externalDataIDSimRefs") is not None else None }) return _obj diff --git a/tools/openapi.yaml b/tools/openapi.yaml index 75263ca38b..8dc97abffb 100644 --- a/tools/openapi.yaml +++ b/tools/openapi.yaml @@ -806,7 +806,7 @@ components: $ref: '#/components/schemas/ExternalDataIdentifier' externalDataAnnotation: type: string - externalDataIDSimRef: + externalDataIDSimRefs: type: array items: $ref: '#/components/schemas/KeyValue' diff --git a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java index 22e11a9a3a..160969ee49 100644 --- a/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java +++ b/vcell-core/src/main/java/cbit/vcell/field/FieldDataDBOperationResults.java @@ -39,7 +39,7 @@ public static FieldDataDBOperationResults fieldDataReferencesToDBResults(List keyValues = fieldDataReference.getExternalDataIDSimRef().stream().map(KeyValue::dtoToKeyValue).collect(Collectors.toList()); + List keyValues = fieldDataReference.getExternalDataIDSimRefs().stream().map(KeyValue::dtoToKeyValue).collect(Collectors.toList()); externalDataIDSimRefs.put(externalDataIdentifier, new Vector<>(keyValues)); } fieldDataDBOperationResults.extDataIDArr = externalDataIdentifiers.toArray(new ExternalDataIdentifier[0]); diff --git a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java index ae4c57f207..2011222286 100644 --- a/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java +++ b/vcell-rest/src/main/java/org/vcell/restq/handlers/FieldData/FieldDataResource.java @@ -175,7 +175,7 @@ public record FieldDataShape( public record FieldDataReference( ExternalDataIdentifier externalDataIdentifier, String externalDataAnnotation, - Vector externalDataIDSimRef + Vector externalDataIDSimRefs ) { } public record AnalyzedResultsFromFieldData( diff --git a/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java index 215ebd264b..62e2c889d5 100644 --- a/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java +++ b/vcell-rest/src/test/java/org/vcell/restq/apiclient/FieldDataAPITest.java @@ -131,7 +131,7 @@ public void testAddAndDeleteFieldDataFromFile() throws ApiException { List references = fieldDataResourceApi.getAllFieldDataIDs(); Assertions.assertEquals(saveFieldDataFromFile.getAnnotation(), references.get(0).getExternalDataAnnotation()); Assertions.assertEquals(results.getFieldDataID(), references.get(0).getExternalDataIdentifier().getKey().getValue().toString()); - Assertions.assertEquals(0, references.get(0).getExternalDataIDSimRef().size()); + Assertions.assertEquals(0, references.get(0).getExternalDataIDSimRefs().size()); /////////////////////// // Delete Field Data // diff --git a/vcell-restclient/.openapi-generator/FILES b/vcell-restclient/.openapi-generator/FILES index 42670fc967..2a54d3a046 100644 --- a/vcell-restclient/.openapi-generator/FILES +++ b/vcell-restclient/.openapi-generator/FILES @@ -100,40 +100,3 @@ src/main/java/org/vcell/restclient/model/UserRegistrationInfo.java src/main/java/org/vcell/restclient/model/VCSimulationIdentifier.java src/main/java/org/vcell/restclient/model/VariableDomain.java src/main/java/org/vcell/restclient/model/VariableType.java -src/test/java/org/vcell/restclient/model/AccesTokenRepresentationRecordTest.java -src/test/java/org/vcell/restclient/model/AnalyzedResultsFromFieldDataTest.java -src/test/java/org/vcell/restclient/model/BatchSystemTypeTest.java -src/test/java/org/vcell/restclient/model/BioModelTest.java -src/test/java/org/vcell/restclient/model/BiomodelRefTest.java -src/test/java/org/vcell/restclient/model/DataIdentifierTest.java -src/test/java/org/vcell/restclient/model/DetailedStateTest.java -src/test/java/org/vcell/restclient/model/DomainTest.java -src/test/java/org/vcell/restclient/model/ExtentTest.java -src/test/java/org/vcell/restclient/model/ExternalDataIdentifierTest.java -src/test/java/org/vcell/restclient/model/FieldDataReferenceTest.java -src/test/java/org/vcell/restclient/model/FieldDataSaveResultsTest.java -src/test/java/org/vcell/restclient/model/FieldDataShapeTest.java -src/test/java/org/vcell/restclient/model/HelloWorldMessageTest.java -src/test/java/org/vcell/restclient/model/HtcJobIDTest.java -src/test/java/org/vcell/restclient/model/ISizeTest.java -src/test/java/org/vcell/restclient/model/IdentityTest.java -src/test/java/org/vcell/restclient/model/KeyValueTest.java -src/test/java/org/vcell/restclient/model/MathmodelRefTest.java -src/test/java/org/vcell/restclient/model/OriginTest.java -src/test/java/org/vcell/restclient/model/PublicationTest.java -src/test/java/org/vcell/restclient/model/SchedulerStatusTest.java -src/test/java/org/vcell/restclient/model/SimulationExecutionStatusRecordTest.java -src/test/java/org/vcell/restclient/model/SimulationJobStatusRecordTest.java -src/test/java/org/vcell/restclient/model/SimulationMessageTest.java -src/test/java/org/vcell/restclient/model/SimulationQueueEntryStatusRecordTest.java -src/test/java/org/vcell/restclient/model/SimulationQueueIDTest.java -src/test/java/org/vcell/restclient/model/SimulationStatusPersistentRecordTest.java -src/test/java/org/vcell/restclient/model/StatusMessageTest.java -src/test/java/org/vcell/restclient/model/StatusTest.java -src/test/java/org/vcell/restclient/model/UserIdentityJSONSafeTest.java -src/test/java/org/vcell/restclient/model/UserLoginInfoForMappingTest.java -src/test/java/org/vcell/restclient/model/UserRegistrationInfoTest.java -src/test/java/org/vcell/restclient/model/UserTest.java -src/test/java/org/vcell/restclient/model/VCSimulationIdentifierTest.java -src/test/java/org/vcell/restclient/model/VariableDomainTest.java -src/test/java/org/vcell/restclient/model/VariableTypeTest.java diff --git a/vcell-restclient/api/openapi.yaml b/vcell-restclient/api/openapi.yaml index 37be006158..f75ef73ca8 100644 --- a/vcell-restclient/api/openapi.yaml +++ b/vcell-restclient/api/openapi.yaml @@ -985,7 +985,7 @@ components: key: value: 0.8008281904610115 parameterScanType: true - externalDataIDSimRef: + externalDataIDSimRefs: - value: 0.8008281904610115 - value: 0.8008281904610115 properties: @@ -993,7 +993,7 @@ components: $ref: '#/components/schemas/ExternalDataIdentifier' externalDataAnnotation: type: string - externalDataIDSimRef: + externalDataIDSimRefs: items: $ref: '#/components/schemas/KeyValue' type: array diff --git a/vcell-restclient/docs/FieldDataReference.md b/vcell-restclient/docs/FieldDataReference.md index e836868f6b..a7a3662c95 100644 --- a/vcell-restclient/docs/FieldDataReference.md +++ b/vcell-restclient/docs/FieldDataReference.md @@ -9,7 +9,7 @@ |------------ | ------------- | ------------- | -------------| |**externalDataIdentifier** | [**ExternalDataIdentifier**](ExternalDataIdentifier.md) | | [optional] | |**externalDataAnnotation** | **String** | | [optional] | -|**externalDataIDSimRef** | [**List<KeyValue>**](KeyValue.md) | | [optional] | +|**externalDataIDSimRefs** | [**List<KeyValue>**](KeyValue.md) | | [optional] | diff --git a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java index 930d4275dd..4c2ee8f0e7 100644 --- a/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java +++ b/vcell-restclient/src/main/java/org/vcell/restclient/model/FieldDataReference.java @@ -38,7 +38,7 @@ @JsonPropertyOrder({ FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_IDENTIFIER, FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION, - FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF + FieldDataReference.JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class FieldDataReference { @@ -48,8 +48,8 @@ public class FieldDataReference { public static final String JSON_PROPERTY_EXTERNAL_DATA_ANNOTATION = "externalDataAnnotation"; private String externalDataAnnotation; - public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF = "externalDataIDSimRef"; - private List externalDataIDSimRef; + public static final String JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS = "externalDataIDSimRefs"; + private List externalDataIDSimRefs; public FieldDataReference() { } @@ -104,36 +104,36 @@ public void setExternalDataAnnotation(String externalDataAnnotation) { } - public FieldDataReference externalDataIDSimRef(List externalDataIDSimRef) { - this.externalDataIDSimRef = externalDataIDSimRef; + public FieldDataReference externalDataIDSimRefs(List externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; return this; } - public FieldDataReference addExternalDataIDSimRefItem(KeyValue externalDataIDSimRefItem) { - if (this.externalDataIDSimRef == null) { - this.externalDataIDSimRef = new ArrayList<>(); + public FieldDataReference addExternalDataIDSimRefsItem(KeyValue externalDataIDSimRefsItem) { + if (this.externalDataIDSimRefs == null) { + this.externalDataIDSimRefs = new ArrayList<>(); } - this.externalDataIDSimRef.add(externalDataIDSimRefItem); + this.externalDataIDSimRefs.add(externalDataIDSimRefsItem); return this; } /** - * Get externalDataIDSimRef - * @return externalDataIDSimRef + * Get externalDataIDSimRefs + * @return externalDataIDSimRefs **/ @javax.annotation.Nullable - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF) + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public List getExternalDataIDSimRef() { - return externalDataIDSimRef; + public List getExternalDataIDSimRefs() { + return externalDataIDSimRefs; } - @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REF) + @JsonProperty(JSON_PROPERTY_EXTERNAL_DATA_I_D_SIM_REFS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setExternalDataIDSimRef(List externalDataIDSimRef) { - this.externalDataIDSimRef = externalDataIDSimRef; + public void setExternalDataIDSimRefs(List externalDataIDSimRefs) { + this.externalDataIDSimRefs = externalDataIDSimRefs; } @@ -151,12 +151,12 @@ public boolean equals(Object o) { FieldDataReference fieldDataReference = (FieldDataReference) o; return Objects.equals(this.externalDataIdentifier, fieldDataReference.externalDataIdentifier) && Objects.equals(this.externalDataAnnotation, fieldDataReference.externalDataAnnotation) && - Objects.equals(this.externalDataIDSimRef, fieldDataReference.externalDataIDSimRef); + Objects.equals(this.externalDataIDSimRefs, fieldDataReference.externalDataIDSimRefs); } @Override public int hashCode() { - return Objects.hash(externalDataIdentifier, externalDataAnnotation, externalDataIDSimRef); + return Objects.hash(externalDataIdentifier, externalDataAnnotation, externalDataIDSimRefs); } @Override @@ -165,7 +165,7 @@ public String toString() { sb.append("class FieldDataReference {\n"); sb.append(" externalDataIdentifier: ").append(toIndentedString(externalDataIdentifier)).append("\n"); sb.append(" externalDataAnnotation: ").append(toIndentedString(externalDataAnnotation)).append("\n"); - sb.append(" externalDataIDSimRef: ").append(toIndentedString(externalDataIDSimRef)).append("\n"); + sb.append(" externalDataIDSimRefs: ").append(toIndentedString(externalDataIDSimRefs)).append("\n"); sb.append("}"); return sb.toString(); } @@ -223,11 +223,11 @@ public String toUrlQueryString(String prefix) { joiner.add(String.format("%sexternalDataAnnotation%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getExternalDataAnnotation()), StandardCharsets.UTF_8).replaceAll("\\+", "%20"))); } - // add `externalDataIDSimRef` to the URL query string - if (getExternalDataIDSimRef() != null) { - for (int i = 0; i < getExternalDataIDSimRef().size(); i++) { - if (getExternalDataIDSimRef().get(i) != null) { - joiner.add(getExternalDataIDSimRef().get(i).toUrlQueryString(String.format("%sexternalDataIDSimRef%s%s", prefix, suffix, + // add `externalDataIDSimRefs` to the URL query string + if (getExternalDataIDSimRefs() != null) { + for (int i = 0; i < getExternalDataIDSimRefs().size(); i++) { + if (getExternalDataIDSimRefs().get(i) != null) { + joiner.add(getExternalDataIDSimRefs().get(i).toUrlQueryString(String.format("%sexternalDataIDSimRefs%s%s", prefix, suffix, "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix)))); } } diff --git a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts index a761f15713..61aa0cd6c6 100644 --- a/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts +++ b/webapp-ng/src/app/core/modules/openapi/model/field-data-reference.ts @@ -16,6 +16,6 @@ import { ExternalDataIdentifier } from './external-data-identifier'; export interface FieldDataReference { externalDataIdentifier?: ExternalDataIdentifier; externalDataAnnotation?: string; - externalDataIDSimRef?: Array; + externalDataIDSimRefs?: Array; } From 6e3b36de1ffe9c3665e50ad04db0f2778be8ff74 Mon Sep 17 00:00:00 2001 From: Ezequiel Valencia Date: Mon, 13 Jan 2025 09:23:16 -0500 Subject: [PATCH 37/37] Client Module Runtime Fix Added the apiclient as a dependency to the client module so that it can execute during runtime when dependency injection is done with Guice. --- vcell-client/pom.xml | 5 ++ .../vcell/field/gui/FieldDataGUIPanel.java | 76 ++++++------------- 2 files changed, 27 insertions(+), 54 deletions(-) diff --git a/vcell-client/pom.xml b/vcell-client/pom.xml index dcd9a3e247..310204d4ab 100644 --- a/vcell-client/pom.xml +++ b/vcell-client/pom.xml @@ -130,6 +130,11 @@ vcell-restclient 0.0.1-SNAPSHOT + + org.vcell + vcell-apiclient + 0.0.1-SNAPSHOT + diff --git a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java index fcbfb2803c..7f032d4ead 100644 --- a/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java +++ b/vcell-client/src/main/java/cbit/vcell/field/gui/FieldDataGUIPanel.java @@ -10,57 +10,7 @@ package cbit.vcell.field.gui; -import java.awt.Component; -import java.awt.GridBagConstraints; -import java.awt.GridBagLayout; -import java.awt.Insets; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.MouseEvent; -import java.io.File; -import java.util.Arrays; -import java.util.Comparator; -import java.util.Enumeration; -import java.util.Hashtable; -import java.util.Iterator; -import java.util.Map.Entry; -import java.util.TreeMap; -import java.util.zip.DataFormatException; - -import javax.swing.BoxLayout; -import javax.swing.JButton; -import javax.swing.JComboBox; -import javax.swing.JFileChooser; -import javax.swing.JLabel; -import javax.swing.JMenuItem; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.JPopupMenu; -import javax.swing.event.TreeExpansionListener; -import javax.swing.tree.DefaultMutableTreeNode; -import javax.swing.tree.DefaultTreeModel; -import javax.swing.tree.TreePath; - -import cbit.vcell.field.FieldDataFileConversion; -import org.vcell.api.client.VCellApiClient; -import org.vcell.util.BeanUtils; -import org.vcell.util.Extent; -import org.vcell.util.ISize; -import org.vcell.util.Origin; -import org.vcell.util.TokenMangler; -import org.vcell.util.UserCancelException; -import org.vcell.util.document.ExternalDataIdentifier; -import org.vcell.util.document.VCDocument; -import org.vcell.util.document.Version; -import org.vcell.util.gui.DialogUtils; -import org.vcell.util.gui.exporter.FileFilters; - -import cbit.image.VCImageUncompressed; -import cbit.vcell.client.ClientRequestManager; -import cbit.vcell.client.DatabaseWindowManager; -import cbit.vcell.client.FieldDataWindowManager; -import cbit.vcell.client.PopupGenerator; -import cbit.vcell.client.RequestManager; +import cbit.vcell.client.*; import cbit.vcell.client.TopLevelWindowManager.FDSimBioModelInfo; import cbit.vcell.client.TopLevelWindowManager.FDSimMathModelInfo; import cbit.vcell.client.TopLevelWindowManager.OpenModelInfoHolder; @@ -71,17 +21,35 @@ import cbit.vcell.desktop.VCellTransferable; import cbit.vcell.field.FieldDataDBOperationResults; import cbit.vcell.field.FieldDataDBOperationSpec; +import cbit.vcell.field.FieldDataFileConversion; +import cbit.vcell.field.gui.FieldDataGUIDataTransferObjects.*; import cbit.vcell.field.io.FieldDataFileOperationResults; import cbit.vcell.field.io.FieldDataFileOperationSpec; import cbit.vcell.geometry.Geometry; -import cbit.vcell.geometry.RegionImage; import cbit.vcell.math.VariableType; import cbit.vcell.server.SimulationStatus; import cbit.vcell.simdata.DataIdentifier; import cbit.vcell.simdata.SimulationData; import cbit.vcell.solver.SimulationInfo; -import cbit.vcell.solvers.CartesianMesh; -import cbit.vcell.field.gui.FieldDataGUIDataTransferObjects.*; +import org.vcell.util.*; +import org.vcell.util.document.ExternalDataIdentifier; +import org.vcell.util.document.VCDocument; +import org.vcell.util.document.Version; +import org.vcell.util.gui.DialogUtils; +import org.vcell.util.gui.exporter.FileFilters; + +import javax.swing.*; +import javax.swing.event.TreeExpansionListener; +import javax.swing.tree.DefaultMutableTreeNode; +import javax.swing.tree.DefaultTreeModel; +import javax.swing.tree.TreePath; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseEvent; +import java.io.File; +import java.util.*; +import java.util.Map.Entry; public class FieldDataGUIPanel extends JPanel {