Skip to content

Commit 3cb855c

Browse files
committed
4.6.4354
1 parent 1fa7b80 commit 3cb855c

File tree

25 files changed

+222
-139
lines changed

25 files changed

+222
-139
lines changed

Java/androidfsstorage/app/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ android {
3030
jarJar {
3131
rules = [
3232
'stax-api-1.0.1.jar' : 'javax.xml.** com.ithit.webdav.xml.@1',
33-
'webdav-server-4.6.4296.jar': 'javax.xml.stream.** com.ithit.webdav.xml.stream.@1'
33+
'webdav-server-4.6.4354.jar': 'javax.xml.stream.** com.ithit.webdav.xml.stream.@1'
3434
]
3535
}
3636

@@ -71,11 +71,11 @@ dependencies {
7171
implementation 'commons-io:commons-io:2.4'
7272
implementation 'com.google.code.gson:gson:2.7'
7373
implementation 'com.android.support:appcompat-v7:27.1.1'
74-
implementation('com.ithit.webdav.integration:android-integration:4.6.4296', {
74+
implementation('com.ithit.webdav.integration:android-integration:4.6.4354', {
7575
exclude group: 'org.nanohttpd', module: 'nanohttpd'
7676
})
7777
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
7878
jarJar 'stax:stax-api:1.0.1'
79-
jarJar 'com.ithit.webdav:webdav-server:4.6.4296'
79+
jarJar 'com.ithit.webdav:webdav-server:4.6.4354'
8080
testImplementation 'junit:junit:4.12'
8181
}

Java/deltav/pom.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.ithit.webdav.samples</groupId>
88
<artifactId>deltav</artifactId>
9-
<version>4.6.4296</version>
9+
<version>4.6.4354</version>
1010
<packaging>war</packaging>
1111

1212
<properties>
@@ -23,7 +23,7 @@
2323
<dependency>
2424
<groupId>com.ithit.webdav.integration</groupId>
2525
<artifactId>servlet-integration</artifactId>
26-
<version>4.6.4296</version>
26+
<version>4.6.4354</version>
2727
</dependency>
2828
<dependency>
2929
<groupId>commons-dbcp</groupId>
@@ -125,7 +125,7 @@
125125
<dependency>
126126
<groupId>com.ithit.webdav</groupId>
127127
<artifactId>webdav-server</artifactId>
128-
<version>4.6.4296</version>
128+
<version>4.6.4354</version>
129129
</dependency>
130130

131131
<dependency>
@@ -165,7 +165,7 @@
165165
<goal>copy-resources</goal>
166166
</goals>
167167
<configuration>
168-
<outputDirectory>${project.build.directory}/deltav-4.6.4296/META-INF</outputDirectory>
168+
<outputDirectory>${project.build.directory}/deltav-4.6.4354/META-INF</outputDirectory>
169169
<overwrite>true</overwrite>
170170
<resources>
171171
<resource>
@@ -244,7 +244,7 @@
244244
<server>filesystem</server>
245245
<port>11021</port>
246246
<path>/</path>
247-
<warSourceDirectory>target/deltav-4.6.4296</warSourceDirectory>
247+
<warSourceDirectory>target/deltav-4.6.4354</warSourceDirectory>
248248
</configuration>
249249
</plugin>
250250
<plugin>

Java/deltav/src/main/java/com/ithit/webdav/samples/deltavservlet/DataAccess.java

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,9 @@
2828
* Helper class to work with DataBase access.
2929
*/
3030
public class DataAccess {
31-
private WebDavEngine engine;
31+
private final WebDavEngine engine;
3232
private Connection currentConnection;
3333
private String defaultTableSpace;
34-
private long totalBytes;
3534

3635
/**
3736
* Initialize {@link DataAccess} with {@link WebDavEngine}
@@ -41,12 +40,7 @@ public class DataAccess {
4140
*/
4241
DataAccess(WebDavEngine engine) {
4342
this.engine = engine;
44-
try {
45-
defaultTableSpace = executeScalar("SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = (SELECT USER FROM dual)");
46-
totalBytes = getTotalBytesDB();
47-
} catch (Exception e) {
48-
engine.getLogger().logError(e.getMessage(), e);
49-
}
43+
engine.setDataAccess(this);
5044
}
5145

5246
private long getTotalBytesDB() {
@@ -90,9 +84,16 @@ private Connection getConnection() throws ServerException {
9084
/**
9185
* Returns default table space in which DB is stored.
9286
*
93-
* @return Returns default table space in which DB is stored.
87+
* @return Default table space in which DB is stored.
9488
*/
9589
String getDefaultTableSpace() {
90+
if (defaultTableSpace == null) {
91+
try {
92+
defaultTableSpace = executeScalar("SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = (SELECT USER FROM dual)");
93+
} catch (Exception e) {
94+
engine.getLogger().logError("Cannot acquire defaultTableSpace", e);
95+
}
96+
}
9697
return defaultTableSpace;
9798
}
9899

@@ -102,7 +103,12 @@ String getDefaultTableSpace() {
102103
* @return Returns total bytes used by DB.
103104
*/
104105
long getTotalBytes() {
105-
return totalBytes;
106+
try {
107+
return getTotalBytesDB();
108+
} catch (Exception e) {
109+
engine.getLogger().logError("Cannot acquire totalBytes", e);
110+
}
111+
return 0;
106112
}
107113

108114
/**
@@ -114,6 +120,19 @@ void closeConnection() {
114120
currentConnection.close();
115121
currentConnection = null;
116122
}
123+
} catch (SQLException e) {
124+
engine.getLogger().logError("Failed to close connection", e);
125+
}
126+
}
127+
128+
/**
129+
* Rollbacks transaction.
130+
*/
131+
void rollback() {
132+
try {
133+
if (currentConnection != null) {
134+
currentConnection.rollback();
135+
}
117136
} catch (SQLException e) {
118137
engine.getLogger().logError("Failed to rollback connection", e);
119138
}

Java/deltav/src/main/java/com/ithit/webdav/samples/deltavservlet/WebDavServlet.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,6 @@ public void init(ServletConfig servletConfig) throws ServletException {
103103
license = getContents(licenseFile);
104104
WebDavEngine engine = new WebDavEngine(logger, license);
105105
DataAccess dataAccess = new DataAccess(engine);
106-
engine.setDataAccess(dataAccess);
107106
String indexLocalPath = createIndexPath();
108107
String indexInterval = servletConfig.getInitParameter("index-interval");
109108
Integer interval = null;
@@ -150,11 +149,11 @@ protected void service(HttpServletRequest httpServletRequest, HttpServletRespons
150149
HttpSession session = httpServletRequest.getSession();
151150
session.setAttribute("engine", engine);
152151
DataAccess dataAccess = new DataAccess(engine);
153-
engine.setDataAccess(dataAccess);
154152
try {
155153
engine.service(davRequest, davResponse);
156154
dataAccess.commit();
157155
} catch (DavException e) {
156+
dataAccess.rollback();
158157
if (e.getStatus() == WebDavStatus.INTERNAL_ERROR) {
159158
logger.logError("Exception during request processing", e);
160159
if (showExceptions)

Java/deltav/src/main/webapp/WEB-INF/MyCustomHandlerPage.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!DOCTYPE html>
1+
<!DOCTYPE html>
22
<html lang="en">
33
<head>
44
<title>IT Hit WebDAV Server Engine</title>
@@ -34,7 +34,7 @@
3434
</div>
3535
<div class="row blocks">
3636
<div class="col-12 col-lg-4 d-flex flex-column">
37-
<h3>Your Test Folder</h3>
37+
<h3>Test Your Server</h3>
3838
<p>
3939
To test your WebDAV server you can run Ajax integration tests right from this page.
4040
</p>

Java/filesystemstorage/pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.ithit.webdav.samples</groupId>
88
<artifactId>filesystemstorage</artifactId>
9-
<version>4.6.4296</version>
9+
<version>4.6.4354</version>
1010
<packaging>war</packaging>
1111

1212
<properties>
@@ -34,7 +34,7 @@
3434
<dependency>
3535
<groupId>com.ithit.webdav.integration</groupId>
3636
<artifactId>servlet-integration</artifactId>
37-
<version>4.6.4296</version>
37+
<version>4.6.4354</version>
3838
</dependency>
3939
<dependency>
4040
<groupId>commons-io</groupId>
@@ -142,7 +142,7 @@
142142
<dependency>
143143
<groupId>com.ithit.webdav</groupId>
144144
<artifactId>webdav-server</artifactId>
145-
<version>4.6.4296</version>
145+
<version>4.6.4354</version>
146146
</dependency>
147147
<dependency>
148148
<groupId>net.java.dev.jna</groupId>
@@ -228,7 +228,7 @@
228228
<server>filesystem</server>
229229
<port>11021</port>
230230
<path>/</path>
231-
<warSourceDirectory>target/filesystemstorage-4.6.4296</warSourceDirectory>
231+
<warSourceDirectory>target/filesystemstorage-4.6.4354</warSourceDirectory>
232232
</configuration>
233233
</plugin>
234234
<plugin>

Java/filesystemstorage/src/main/webapp/WEB-INF/MyCustomHandlerPage.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!DOCTYPE html>
1+
<!DOCTYPE html>
22
<html lang="en">
33
<head>
44
<title>IT Hit WebDAV Server Engine</title>
@@ -34,7 +34,7 @@
3434
</div>
3535
<div class="row blocks">
3636
<div class="col-12 col-lg-4 d-flex flex-column">
37-
<h3>Your Test Folder</h3>
37+
<h3>Test Your Server</h3>
3838
<p>
3939
To test your WebDAV server you can run Ajax integration tests right from this page.
4040
</p>

Java/oraclestorage/pom.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.ithit.webdav.samples</groupId>
88
<artifactId>oraclestorage</artifactId>
9-
<version>4.6.4296</version>
9+
<version>4.6.4354</version>
1010
<packaging>war</packaging>
1111

1212
<properties>
@@ -23,7 +23,7 @@
2323
<dependency>
2424
<groupId>com.ithit.webdav.integration</groupId>
2525
<artifactId>servlet-integration</artifactId>
26-
<version>4.6.4296</version>
26+
<version>4.6.4354</version>
2727
</dependency>
2828
<dependency>
2929
<groupId>commons-dbcp</groupId>
@@ -125,7 +125,7 @@
125125
<dependency>
126126
<groupId>com.ithit.webdav</groupId>
127127
<artifactId>webdav-server</artifactId>
128-
<version>4.6.4296</version>
128+
<version>4.6.4354</version>
129129
</dependency>
130130

131131
<dependency>
@@ -165,7 +165,7 @@
165165
<goal>copy-resources</goal>
166166
</goals>
167167
<configuration>
168-
<outputDirectory>${project.build.directory}/oraclestorage-4.6.4296/META-INF</outputDirectory>
168+
<outputDirectory>${project.build.directory}/oraclestorage-4.6.4354/META-INF</outputDirectory>
169169
<overwrite>true</overwrite>
170170
<resources>
171171
<resource>
@@ -244,7 +244,7 @@
244244
<server>filesystem</server>
245245
<port>11021</port>
246246
<path>/</path>
247-
<warSourceDirectory>target/oraclestorage-4.6.4296</warSourceDirectory>
247+
<warSourceDirectory>target/oraclestorage-4.6.4354</warSourceDirectory>
248248
</configuration>
249249
</plugin>
250250
<plugin>

Java/oraclestorage/src/main/java/com/ithit/webdav/samples/oraclestorageservlet/DataAccess.java

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,9 @@
2828
*/
2929
public class DataAccess {
3030

31-
private WebDavEngine engine;
31+
private final WebDavEngine engine;
3232
private Connection currentConnection;
3333
private String defaultTableSpace;
34-
private long totalBytes;
3534

3635
/**
3736
* Initialize {@link DataAccess} with {@link WebDavEngine}.
@@ -40,12 +39,7 @@ public class DataAccess {
4039
*/
4140
DataAccess(WebDavEngine engine) {
4241
this.engine = engine;
43-
try {
44-
defaultTableSpace = executeScalar("SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = (SELECT USER FROM dual)");
45-
totalBytes = getTotalBytesDB();
46-
} catch (Exception e) {
47-
engine.getLogger().logError(e.getMessage(), e);
48-
}
42+
engine.setDataAccess(this);
4943
}
5044

5145
private long getTotalBytesDB() {
@@ -92,6 +86,13 @@ private Connection getConnection() throws ServerException {
9286
* @return Default table space in which DB is stored.
9387
*/
9488
String getDefaultTableSpace() {
89+
if (defaultTableSpace == null) {
90+
try {
91+
defaultTableSpace = executeScalar("SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = (SELECT USER FROM dual)");
92+
} catch (Exception e) {
93+
engine.getLogger().logError("Cannot acquire defaultTableSpace", e);
94+
}
95+
}
9596
return defaultTableSpace;
9697
}
9798

@@ -101,7 +102,12 @@ String getDefaultTableSpace() {
101102
* @return Total bytes used by DB.
102103
*/
103104
long getTotalBytes() {
104-
return totalBytes;
105+
try {
106+
return getTotalBytesDB();
107+
} catch (Exception e) {
108+
engine.getLogger().logError("Cannot acquire totalBytes", e);
109+
}
110+
return 0;
105111
}
106112

107113
/**
@@ -113,6 +119,19 @@ void closeConnection() {
113119
currentConnection.close();
114120
currentConnection = null;
115121
}
122+
} catch (SQLException e) {
123+
engine.getLogger().logError("Failed to close connection", e);
124+
}
125+
}
126+
127+
/**
128+
* Rollbacks transaction.
129+
*/
130+
void rollback() {
131+
try {
132+
if (currentConnection != null) {
133+
currentConnection.rollback();
134+
}
116135
} catch (SQLException e) {
117136
engine.getLogger().logError("Failed to rollback connection", e);
118137
}

Java/oraclestorage/src/main/java/com/ithit/webdav/samples/oraclestorageservlet/WebDavServlet.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,6 @@ public void init(ServletConfig servletConfig) throws ServletException {
9292
logger = new HttpServletLoggerImpl(servletConfig.getServletContext());
9393
WebDavEngine engine = new WebDavEngine(logger, license);
9494
DataAccess dataAccess = new DataAccess(engine);
95-
engine.setDataAccess(dataAccess);
9695
String indexLocalPath = createIndexPath();
9796
String indexInterval = servletConfig.getInitParameter("index-interval");
9897
Integer interval = null;
@@ -137,12 +136,11 @@ protected void service(HttpServletRequest httpServletRequest, HttpServletRespons
137136
HttpSession session = httpServletRequest.getSession();
138137
session.setAttribute("engine", engine);
139138
DataAccess dataAccess = new DataAccess(engine);
140-
engine.setDataAccess(dataAccess);
141-
142139
try {
143140
engine.service(davRequest, davResponse);
144141
dataAccess.commit();
145142
} catch (DavException e) {
143+
dataAccess.rollback();
146144
if (e.getStatus() == WebDavStatus.INTERNAL_ERROR) {
147145
logger.logError("Exception during request processing", e);
148146
if (showExceptions)

0 commit comments

Comments
 (0)