Как-то диковато у вас получилось. С одной стороны, одна команда работает с обоими хранилищами, с другой стороны, делает это весьма специфичным образом.
С точки зрения команды, она оперирует исключительно со строками. Может быть, удастся обобщить два стейта так, чтобы с точки зрения команды они выглядели одинаково?