/* Copyright (c) Citrix Systems Inc. * All rights reserved. * * Redistribution and use in source and binary forms, * with or without modification, are permitted provided * that the following conditions are met: * * * Redistributions of source code must retain the above * copyright notice, this list of conditions and the * following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the * following disclaimer in the documentation and/or other * materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ using System; using System.Collections.Generic; using System.Text; using XenAdmin.Core; using XenAPI; using System.Collections; using XenAdmin.Network; namespace XenAdmin.ServerDBs.FakeAPI { internal class fakeSR : fakeXenObject { public fakeSR(DbProxy proxy) : base("sr", proxy) { } public Response get_uuid(string session, string opaque_ref) { return new Response((string)proxy.db.GetValue("sr", opaque_ref, "uuid")); } public Response probe(string session, string host_ref, Hashtable device_config, string type, Hashtable sm_config) { switch (type) { case "lvmohba": return new Response( @" Vendor 500GB Serial Path 1234-abcd-5678 1 2 3 4 "); default: return new Response(@" 5fc2cbc4-8ae9-37aa-ab7e-a19fa24f3e91 197984256 SMAPI "); } } public Response assert_can_host_ha_statefile(string session, string opaque_ref) { return new Response(""); } public Response create(string session, string host_ref, Hashtable device_config, string size, string label, string description, string type, string content, bool shared, Hashtable sm_config) { // For SrScanAction: fake data so we can step through the New SR Wizard Response response = new Response(); if (label == Helpers.GuiTempObjectPrefix) // fake create to find list of aggregates on an SR { response.Status = ResponseTypes.FAILURE; if (type == "netapp") response.ErrorDescription = new string[] { "SR_BACKEND_FAILURE_123", "", "", @" SMAPI 609550192640 6 raid4 True " }; else // I haven't managed to find out what a real Dell EqualLogic response looks like, // but this is good enough to make the New SR Wizard work. response.ErrorDescription = new string[] { "SR_BACKEND_FAILURE_163", "", "", @" SMAPI true 2 2 609550192640 532573377854 "}; } return response; } } }