diff --git a/src/Speckle.Sdk/Transports/DiskTransport.cs b/src/Speckle.Sdk/Transports/DiskTransport.cs
index ec00cfe4..ccb4b4cf 100644
--- a/src/Speckle.Sdk/Transports/DiskTransport.cs
+++ b/src/Speckle.Sdk/Transports/DiskTransport.cs
@@ -98,23 +98,6 @@ public class DiskTransport : ICloneable, ITransport
Elapsed += stopwatch.Elapsed;
}
- public void SaveObject(string id, ITransport sourceTransport)
- {
- CancellationToken.ThrowIfCancellationRequested();
-
- var serializedObject = sourceTransport.GetObject(id);
-
- if (serializedObject is null)
- {
- throw new TransportException(
- this,
- $"Cannot copy {id} from {sourceTransport.TransportName} to {TransportName} as source returned null"
- );
- }
-
- SaveObject(id, serializedObject);
- }
-
public Task WriteComplete()
{
return Task.CompletedTask;
diff --git a/src/Speckle.Sdk/Transports/ITransport.cs b/src/Speckle.Sdk/Transports/ITransport.cs
index cee21d33..5e7cabd9 100644
--- a/src/Speckle.Sdk/Transports/ITransport.cs
+++ b/src/Speckle.Sdk/Transports/ITransport.cs
@@ -56,16 +56,6 @@ public interface ITransport
/// requested cancel
public void SaveObject(string id, string serializedObject);
- ///
- ///
- /// Retrieving its serialised version from the provided transport.
- ///
- ///
- /// The transport from where to retrieve it.
- /// Failed to save object
- /// requested cancel
- public void SaveObject(string id, ITransport sourceTransport);
-
///
/// Awaitable method to figure out whether writing is completed.
///
diff --git a/src/Speckle.Sdk/Transports/Memory.cs b/src/Speckle.Sdk/Transports/Memory.cs
index ebdb29eb..4eb8d917 100644
--- a/src/Speckle.Sdk/Transports/Memory.cs
+++ b/src/Speckle.Sdk/Transports/Memory.cs
@@ -63,23 +63,6 @@ public sealed class MemoryTransport : ITransport, ICloneable
Elapsed += stopwatch.Elapsed;
}
- public void SaveObject(string id, ITransport sourceTransport)
- {
- CancellationToken.ThrowIfCancellationRequested();
-
- var serializedObject = sourceTransport.GetObject(id);
-
- if (serializedObject is null)
- {
- throw new TransportException(
- this,
- $"Cannot copy {id} from {sourceTransport.TransportName} to {TransportName} as source returned null"
- );
- }
-
- SaveObject(id, serializedObject);
- }
-
public string? GetObject(string id)
{
var stopwatch = Stopwatch.StartNew();
diff --git a/src/Speckle.Sdk/Transports/SQLite.cs b/src/Speckle.Sdk/Transports/SQLite.cs
index 03244186..3389cde9 100644
--- a/src/Speckle.Sdk/Transports/SQLite.cs
+++ b/src/Speckle.Sdk/Transports/SQLite.cs
@@ -370,24 +370,6 @@ public sealed class SQLiteTransport : IDisposable, ICloneable, ITransport, IBlob
_writeTimer.Start();
}
- public void SaveObject(string id, ITransport sourceTransport)
- {
- CancellationToken.ThrowIfCancellationRequested();
-
- var serializedObject = sourceTransport.GetObject(id);
-
- if (serializedObject is null)
- {
- throw new TransportException(
- this,
- $"Cannot copy {id} from {sourceTransport.TransportName} to {TransportName} as source returned null"
- );
- }
-
- //Should this just call SaveObject... do we not want the write timers?
- _queue.Enqueue((id, serializedObject, Encoding.UTF8.GetByteCount(serializedObject)));
- }
-
///
/// Directly saves the object in the db.
///
diff --git a/src/Speckle.Sdk/Transports/ServerV2.cs b/src/Speckle.Sdk/Transports/ServerV2.cs
index 41a2b8d7..4632c408 100644
--- a/src/Speckle.Sdk/Transports/ServerV2.cs
+++ b/src/Speckle.Sdk/Transports/ServerV2.cs
@@ -224,21 +224,6 @@ public sealed class ServerTransport : IServerTransport
}
}
- public void SaveObject(string id, ITransport sourceTransport)
- {
- var objectData = sourceTransport.GetObject(id);
-
- if (objectData is null)
- {
- throw new TransportException(
- this,
- $"Cannot copy {id} from {sourceTransport.TransportName} to {TransportName} as source returned null"
- );
- }
-
- SaveObject(id, objectData);
- }
-
public void BeginWrite()
{
if (_shouldSendThreadRun || _sendingThread != null)
diff --git a/tests/Speckle.Sdk.Serialization.Tests/TestTransport.cs b/tests/Speckle.Sdk.Serialization.Tests/TestTransport.cs
index 5ebe1239..9baf0797 100644
--- a/tests/Speckle.Sdk.Serialization.Tests/TestTransport.cs
+++ b/tests/Speckle.Sdk.Serialization.Tests/TestTransport.cs
@@ -30,8 +30,6 @@ public class TestTransport : ITransport
public void SaveObject(string id, string serializedObject) => Objects[id] = serializedObject;
- public void SaveObject(string id, ITransport sourceTransport) => throw new NotImplementedException();
-
public Task WriteComplete() => throw new NotImplementedException();
public string? GetObject(string id) => Objects.TryGetValue(id, out string? o) ? o : null;
diff --git a/tests/Speckle.Sdk.Tests.Unit/Transports/TransportTests.cs b/tests/Speckle.Sdk.Tests.Unit/Transports/TransportTests.cs
index df42d2bc..a2b9e996 100644
--- a/tests/Speckle.Sdk.Tests.Unit/Transports/TransportTests.cs
+++ b/tests/Speckle.Sdk.Tests.Unit/Transports/TransportTests.cs
@@ -93,13 +93,6 @@ public abstract class TransportTests
}
}
- [Test]
- public void SaveObject_FromTransport_FailsPredictably()
- {
- var exception = Assert.Throws(() => Sut.NotNull().SaveObject("non-existent-id", Sut));
- Assert.That(exception?.Transport, Is.EqualTo(Sut));
- }
-
[Test]
public async Task ProgressAction_Called_OnSaveObject()
{