refactor - redraw diag, rename methods.

pull/1/head
Ivan Olexyn 4 years ago
parent efd9313885
commit 4a99d7a11a

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 67 KiB

@ -4,13 +4,14 @@
<element>
<id>UMLState</id>
<coordinates>
<x>1070</x>
<y>500</y>
<x>840</x>
<y>430</y>
<w>120</w>
<h>40</h>
<h>60</h>
</coordinates>
<panel_attributes>make
ListCreated
<panel_attributes>makeList
OfLocally
CreatedFiles
halign=left
transparency=0</panel_attributes>
<additional_attributes/>
@ -18,13 +19,14 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>1070</x>
<y>540</y>
<x>840</x>
<y>490</y>
<w>120</w>
<h>40</h>
<h>60</h>
</coordinates>
<panel_attributes>make
ListDeleted
<panel_attributes>makeList
OfLocally
DeletedFiles
halign=left
transparency=0</panel_attributes>
<additional_attributes/>
@ -32,27 +34,29 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>760</x>
<y>650</y>
<x>840</x>
<y>610</y>
<w>120</w>
<h>40</h>
<h>50</h>
</coordinates>
<panel_attributes>doCreate
<panel_attributes>doCreateOps
OnOtherSDs
halign=left
style=wordwrap
transparency=0
transparency=0</panel_attributes>
bg=#81D4FA</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>1270</x>
<y>310</y>
<x>1050</x>
<y>270</y>
<w>120</w>
<h>50</h>
</coordinates>
<panel_attributes>read StateFile
<panel_attributes>read
StateFile
bg=#FFF59D
halign=left
style=wordwrap
@ -62,13 +66,14 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>1070</x>
<y>580</y>
<x>840</x>
<y>550</y>
<w>120</w>
<h>40</h>
<h>60</h>
</coordinates>
<panel_attributes>make
ListModified
<panel_attributes>makeList
OfLocally
ModifiedFiles
halign=left
transparency=0</panel_attributes>
<additional_attributes/>
@ -76,12 +81,13 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>1070</x>
<y>410</y>
<x>840</x>
<y>380</y>
<w>120</w>
<h>40</h>
<h>50</h>
</coordinates>
<panel_attributes>readState
FromFS
bg=#A5D6A7
halign=left
style=wordwrap
@ -91,25 +97,27 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>750</x>
<y>260</y>
<x>840</x>
<y>200</y>
<w>120</w>
<h>30</h>
</coordinates>
<panel_attributes>START
bg=#B0BEC5
transparency=0
style=wordwrap</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>1070</x>
<y>800</y>
<x>840</x>
<y>760</y>
<w>120</w>
<h>50</h>
</coordinates>
<panel_attributes>write StateFile
<panel_attributes>write
StateFile
bg=#FFF59D
halign=left
style=wordwrap
@ -119,36 +127,40 @@ transparency=0</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>760</x>
<y>690</y>
<x>840</x>
<y>660</y>
<w>120</w>
<h>40</h>
<h>50</h>
</coordinates>
<panel_attributes>doDelete
<panel_attributes>doDeleteOps
OnOtherSDs
halign=left
style=wordwrap
transparency=0</panel_attributes>
transparency=0
bg=#81D4FA</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>760</x>
<y>730</y>
<x>840</x>
<y>710</y>
<w>120</w>
<h>40</h>
<h>50</h>
</coordinates>
<panel_attributes>doModify
<panel_attributes>doModifyOps
OnOtherSDs
halign=left
style=wordwrap
transparency=0</panel_attributes>
transparency=0
bg=#81D4FA</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>1310</x>
<y>410</y>
<x>1090</x>
<y>380</y>
<w>40</w>
<h>40</h>
</coordinates>
@ -159,101 +171,78 @@ transparency=0</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1320</x>
<y>350</y>
<x>1100</x>
<y>310</y>
<w>30</w>
<h>80</h>
<h>90</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;60.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;70.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1180</x>
<y>440</y>
<w>170</w>
<h>400</h>
<x>950</x>
<y>410</y>
<w>180</w>
<h>390</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;380.0;150.0;380.0;150.0;10.0</additional_attributes>
<additional_attributes>10.0;370.0;160.0;370.0;160.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1180</x>
<y>410</y>
<w>150</w>
<x>950</x>
<y>380</y>
<w>160</w>
<h>40</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;20.0;130.0;20.0</additional_attributes>
<additional_attributes>10.0;20.0;140.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>600</x>
<y>260</y>
<w>180</w>
<h>680</h>
<x>780</x>
<y>200</y>
<w>80</w>
<h>650</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>150.0;10.0;10.0;10.0;10.0;660.0;160.0;660.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>870</x>
<y>740</y>
<w>280</w>
<h>80</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>260.0;60.0;260.0;10.0;10.0;10.0</additional_attributes>
<additional_attributes>60.0;10.0;10.0;10.0;10.0;630.0;60.0;630.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>760</x>
<y>900</y>
<x>840</x>
<y>810</y>
<w>120</w>
<h>40</h>
</coordinates>
<panel_attributes>Sleep
<panel_attributes>SLEEP
style=wordwrap
bg=#B0BEC5
transparency=0</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>870</x>
<y>840</y>
<w>280</w>
<h>100</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;80.0;260.0;80.0;260.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1140</x>
<y>320</y>
<w>150</w>
<x>910</x>
<y>280</y>
<w>160</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>130.0;10.0;10.0;10.0</additional_attributes>
<additional_attributes>140.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>1110</x>
<y>310</y>
<x>880</x>
<y>270</y>
<w>40</w>
<h>40</h>
</coordinates>
@ -264,8 +253,8 @@ transparency=0</panel_attributes>
<element>
<id>Text</id>
<coordinates>
<x>1240</x>
<y>470</y>
<x>980</x>
<y>450</y>
<w>110</w>
<h>50</h>
</coordinates>
@ -276,19 +265,19 @@ StateFile]</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1120</x>
<y>340</y>
<x>890</x>
<y>300</y>
<w>30</w>
<h>90</h>
<h>100</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;70.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;80.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>1030</x>
<y>360</y>
<x>790</x>
<y>330</y>
<w>110</w>
<h>30</h>
</coordinates>
@ -298,20 +287,20 @@ StateFile]</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>860</x>
<y>260</y>
<w>290</w>
<x>890</x>
<y>220</y>
<w>30</w>
<h>70</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>270.0;50.0;270.0;10.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>1150</x>
<y>300</y>
<x>920</x>
<y>250</y>
<w>130</w>
<h>30</h>
</coordinates>
@ -321,8 +310,8 @@ StateFile]</panel_attributes>
<element>
<id>Text</id>
<coordinates>
<x>1200</x>
<y>390</y>
<x>970</x>
<y>340</y>
<w>100</w>
<h>50</h>
</coordinates>
@ -330,39 +319,16 @@ StateFile]</panel_attributes>
exists]</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>870</x>
<y>610</y>
<w>280</w>
<h>80</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;60.0;260.0;60.0;260.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1120</x>
<y>440</y>
<w>30</w>
<h>80</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;60.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>870</x>
<y>1040</y>
<w>250</w>
<h>40</h>
<x>1320</x>
<y>750</y>
<w>150</w>
<h>50</h>
</coordinates>
<panel_attributes>add/remove Collection (Map)
<panel_attributes>add/remove
Collection (Map)
halign=left
style=wordwrap
bg=#B39DDB</panel_attributes>
@ -371,8 +337,8 @@ bg=#B39DDB</panel_attributes>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>800</x>
<y>1040</y>
<x>1270</x>
<y>810</y>
<w>40</w>
<h>40</h>
</coordinates>
@ -382,60 +348,61 @@ bg=#B39DDB</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>810</x>
<y>930</y>
<w>30</w>
<h>130</h>
<x>950</x>
<y>810</y>
<w>340</w>
<h>40</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;110.0;10.0;10.0</additional_attributes>
<additional_attributes>320.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>830</x>
<y>1040</y>
<x>1280</x>
<y>760</y>
<w>60</w>
<h>40</h>
<h>70</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>40.0;20.0;10.0;20.0</additional_attributes>
<additional_attributes>40.0;20.0;10.0;20.0;10.0;50.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>800</x>
<y>220</y>
<w>680</w>
<h>840</h>
<x>950</x>
<y>190</y>
<w>590</w>
<h>590</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>10.0;40.0;10.0;20.0;660.0;20.0;660.0;820.0</additional_attributes>
<additional_attributes>10.0;20.0;570.0;20.0;570.0;570.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>810</x>
<y>1070</y>
<w>80</w>
<h>70</h>
<x>1280</x>
<y>840</y>
<w>60</w>
<h>60</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>60.0;50.0;10.0;50.0;10.0;10.0</additional_attributes>
<additional_attributes>40.0;40.0;10.0;40.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>870</x>
<y>1100</y>
<w>250</w>
<h>40</h>
<x>1320</x>
<y>860</y>
<w>150</w>
<h>50</h>
</coordinates>
<panel_attributes>add/remove Directory
<panel_attributes>add/remove
Directory
halign=left
style=wordwrap
bg=#B39DDB</panel_attributes>
@ -444,20 +411,20 @@ bg=#B39DDB</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1110</x>
<y>1040</y>
<w>350</w>
<x>1460</x>
<y>760</y>
<w>60</w>
<h>40</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>330.0;20.0;10.0;20.0</additional_attributes>
<additional_attributes>40.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>1440</x>
<y>1040</y>
<x>1500</x>
<y>760</y>
<w>40</w>
<h>40</h>
</coordinates>
@ -467,20 +434,20 @@ bg=#B39DDB</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1110</x>
<y>1070</y>
<w>370</w>
<h>70</h>
<x>1460</x>
<y>790</y>
<w>80</w>
<h>110</h>
</coordinates>
<panel_attributes>lt=&lt;-
</panel_attributes>
<additional_attributes>350.0;10.0;350.0;50.0;10.0;50.0</additional_attributes>
<additional_attributes>60.0;10.0;60.0;90.0;10.0;90.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>870</x>
<y>1010</y>
<x>1060</x>
<y>800</y>
<w>160</w>
<h>30</h>
</coordinates>
@ -490,10 +457,10 @@ bg=#B39DDB</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>440</x>
<y>160</y>
<w>1060</w>
<h>820</h>
<x>490</x>
<y>90</y>
<w>730</w>
<h>850</h>
</coordinates>
<panel_attributes>
* Logic-Thread*
@ -506,10 +473,10 @@ lt=.</panel_attributes>
<element>
<id>UMLState</id>
<coordinates>
<x>440</x>
<y>990</y>
<w>1060</w>
<h>180</h>
<x>1240</x>
<y>680</y>
<w>340</w>
<h>260</h>
</coordinates>
<panel_attributes>
* UI-Thread*
@ -520,72 +487,69 @@ lt=.</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLNote</id>
<id>UMLClass</id>
<coordinates>
<x>630</x>
<y>660</y>
<w>110</w>
<h>90</h>
<x>740</x>
<y>120</y>
<w>460</w>
<h>770</h>
</coordinates>
<panel_attributes>Compare the Lists of the different Directories
transparency=0</panel_attributes>
<panel_attributes>*SyncDirectory*
lw=2.5</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<id>UMLClass</id>
<coordinates>
<x>730</x>
<y>660</y>
<w>50</w>
<h>50</h>
<x>510</x>
<y>370</y>
<w>150</w>
<h>40</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>30.0;10.0;10.0;30.0</additional_attributes>
<panel_attributes>*SyncMap*
bg=#81D4FA
lw=2.5</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<id>UMLClass</id>
<coordinates>
<x>730</x>
<y>700</y>
<w>50</w>
<h>30</h>
<x>510</x>
<y>240</y>
<w>150</w>
<h>40</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>30.0;10.0;10.0;10.0</additional_attributes>
<panel_attributes>*MAP_OF_SYNCMAPS*
bg=#B0BEC5
transparency=0
lw=2.5</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>730</x>
<y>720</y>
<w>50</w>
<h>50</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>30.0;30.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>1010</x>
<y>190</y>
<w>420</w>
<h>770</h>
<x>570</x>
<y>270</y>
<w>60</w>
<h>120</h>
</coordinates>
<panel_attributes>SyncDirectory
bg=#F6F6F6</panel_attributes>
<additional_attributes/>
<panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-
m1=1
m2=0..n</panel_attributes>
<additional_attributes>10.0;10.0;10.0;100.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<id>Relation</id>
<coordinates>
<x>700</x>
<y>190</y>
<w>230</w>
<h>770</h>
<x>570</x>
<y>400</y>
<w>190</w>
<h>110</h>
</coordinates>
<panel_attributes>SyncMap
bg=#F6F6F6</panel_attributes>
<additional_attributes/>
<panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-
m1=1
m2=0..n
layer=2</panel_attributes>
<additional_attributes>10.0;10.0;10.0;80.0;170.0;80.0</additional_attributes>
</element>
</diagram>

@ -4,7 +4,6 @@ import com.olexyn.ensync.artifacts.SyncDirectory;
import com.olexyn.ensync.artifacts.SyncMap;
import java.io.File;
import java.util.Map;
import java.util.Map.Entry;
import static com.olexyn.ensync.Main.MAP_OF_SYNCMAPS;
@ -45,15 +44,15 @@ public class Flow implements Runnable {
private void doSyncDirectory(SyncDirectory SD) {
state = "READ";
SD.readFreshState();
SD.readStateFromFS();
SD.listCreated = SD.makeListCreated();
SD.listDeleted = SD.makeListDeleted();
SD.listModified = SD.makeListModified();
SD.listCreated = SD.makeListOfLocallyCreatedFiles();
SD.listDeleted = SD.makeListOfLocallyDeletedFiles();
SD.listModified = SD.makeListOfLocallyModifiedFiles();
SD.doCreate();
SD.doDelete();
SD.doModify();
SD.doCreateOpsOnOtherSDs();
SD.doDeleteOpsOnOtherSDs();
SD.doModifyOpsOnOtherSDs();
SD.writeStateFile(SD.path);
}

@ -45,12 +45,14 @@ public class SyncDirectory {
/**
* Get the current state by using the `find` command.
*/
public Map<String, SyncFile> readFreshState() {
public Map<String, SyncFile> readStateFromFS() {
//NOTE that the SFile().lastModifiedOld is not set here, so it is 0 by default.
Map<String, SyncFile> filemap = new HashMap<>();
Execute.TwoBr find = x.execute(new String[]{"find",
path});
Execute.TwoBr find = x.execute(new String[]{
"find",
path
});
List<String> pathList = tools.brToListString(find.output);
@ -90,9 +92,9 @@ public class SyncDirectory {
* Compare the OLD and NEW pools.
* List is cleared and created each time.
*/
public Map<String, SyncFile> makeListCreated() {
public Map<String, SyncFile> makeListOfLocallyCreatedFiles() {
Map<String, SyncFile> fromA = readFreshState();
Map<String, SyncFile> fromA = readStateFromFS();
Map<String, SyncFile> substractB = readStateFile();
return tools.mapMinus(fromA, substractB);
@ -103,10 +105,10 @@ public class SyncDirectory {
* Compare the OLD and NEW pools.
* List is cleared and created each time.
*/
public Map<String, SyncFile> makeListDeleted() {
public Map<String, SyncFile> makeListOfLocallyDeletedFiles() {
Map<String, SyncFile> fromA = readStateFile();
Map<String, SyncFile> substractB = readFreshState();
Map<String, SyncFile> substractB = readStateFromFS();
Map<String, SyncFile> listDeleted = tools.mapMinus(fromA, substractB);
@ -131,13 +133,13 @@ public class SyncDirectory {
* Compare the OLD and NEW pools.
* List is cleared and created each time.
*/
public Map<String, SyncFile> makeListModified() {
public Map<String, SyncFile> makeListOfLocallyModifiedFiles() {
Map<String, SyncFile> listModified = new HashMap<>();
Map<String, SyncFile> stateFileMap = readStateFile();
for (var freshFileEntry : readFreshState().entrySet()) {
for (var freshFileEntry : readStateFromFS().entrySet()) {
String freshFileKey = freshFileEntry.getKey();
SyncFile freshFile = freshFileEntry.getValue();
@ -206,7 +208,7 @@ public class SyncDirectory {
}
public void doCreate() {
public void doCreateOpsOnOtherSDs() {
for (var entry : listCreated.entrySet()) {
SyncFile createdFile = entry.getValue();
@ -218,7 +220,7 @@ public class SyncDirectory {
Info info = new Info(this, createdFile, otherSD);
writeFile(info, this, createdFile, otherSD);
writeFileIfNewer(info, createdFile, otherSD);
}
}
}
@ -227,7 +229,7 @@ public class SyncDirectory {
/**
*
*/
public void doDelete() {
public void doDeleteOpsOnOtherSDs() {
for (var entry : listDeleted.entrySet()) {
SyncFile deletedFile = entry.getValue();
@ -262,7 +264,7 @@ public class SyncDirectory {
}
public void doModify() {
public void doModifyOpsOnOtherSDs() {
for (var entry : listModified.entrySet()) {
SyncFile modifiedFile = entry.getValue();
@ -274,20 +276,23 @@ public class SyncDirectory {
Info info = new Info(this, modifiedFile, otherSD);
writeFile(info, this, modifiedFile, otherSD);
writeFileIfNewer(info, modifiedFile, otherSD);
}
}
}
private void writeFile(Info info, SyncDirectory thisSD, SyncFile thisFile, SyncDirectory otherSD) {
/***
*
* @param info
* @param thisFile
* @param otherSD
*/
private void writeFileIfNewer(Info info, SyncFile thisFile, SyncDirectory otherSD) {
SyncFile otherFile = new SyncFile(otherSD, otherSD.path + thisFile.relativePath);
if (otherFile.exists() && thisFile.getTimeModified() < otherFile.getTimeModified()) { return;}
if (thisFile.isDirectory() && !otherFile.exists()) {
List<String> cmd = List.of("mkdir", "-p", info.otherFilePath);
x.execute(cmd);
@ -296,11 +301,8 @@ public class SyncDirectory {
if (thisFile.isFile()) {
if (!info.otherParentFile.exists()) {
makeParentChain(otherFile, thisFile);
// List<String> cmd = List.of("mkdir", "-p", info.otherParentPath);
//x.execute(cmd);
}
List<String> cmd = List.of("cp", "-p", info.thisFilePath, info.otherFilePath);
@ -309,7 +311,10 @@ public class SyncDirectory {
}
}
/**
* @param otherFile
* @param thisFile
*/
private void makeParentChain(File otherFile, File thisFile) {
try {
File otherParent = new File(otherFile.getParent());

Loading…
Cancel
Save