public void SegnalaLibro(Libro libro) { try { BasicHttpBinding myBinding = new BasicHttpBinding(); myBinding.MaxReceivedMessageSize = 2147483647; myBinding.MaxBufferSize = 2147483647; EndpointAddress myEndpoint = new EndpointAddress(_addr); ChannelFactory <IUtente> myChannelFactory = new ChannelFactory <IUtente>(myBinding, myEndpoint); // Create a channel. IUtente client = myChannelFactory.CreateChannel(); SegnalazioneLibro segn = new SegnalazioneLibro() { Username = _username, Libro = _libro, Id = 1 }; client.AddSegnalazioneLibro(segn); ((IClientChannel)client).Close(); } catch (Exception) { //doNothing } }
public SegnalazioneLibro GetSegnalazioneLibro() { SegnalazioneLibro segn = null; try { if (File.Exists(_fileCodaSenalazioneLibro)) { StreamReader streamReader = new StreamReader(_fileCodaSenalazioneLibro); List <string> lines = new List <string>(); while (streamReader.Peek() >= 0) { lines.Add(streamReader.ReadLine()); } streamReader.Close(); if (lines.Count > 0) { string firstLine = lines[0]; lines.Remove(firstLine); StreamWriter writer = new StreamWriter(_fileCodaSenalazioneLibro); foreach (string l in lines) { writer.WriteLine(l); } writer.Close(); string[] elements = firstLine.Split('/'); if (elements.Length == 3) { Libro libro = _segnalazioneLibroController.GetLibro(elements[0], elements[1]); if (libro == null) { throw new Exception("impossibile trovare il libro"); } segn = new SegnalazioneLibro(elements[2], libro); ISession sessione = OpenConnection(); sessione.BeginTransaction(); List <SegnalazioneLibro> segnReceived = null; ICriteria criteria = sessione.CreateCriteria <SegnalazioneLibro>(); segnReceived = (List <SegnalazioneLibro>)criteria.Add(Expression.Like("Libro", libro)).List <SegnalazioneLibro>(); foreach (SegnalazioneLibro s in segnReceived) { sessione.Delete(s); } sessione.Transaction.Commit(); sessione.Transaction.Dispose(); } else { throw new Exception("segnalazione scorretta"); } } } return(segn); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public void AddSegnalazioneLibro(SegnalazioneLibro segnalazioneLibro) { if (_segnalazioniController == null) { _segnalazioniController = new SegnalazioniController(); } _segnalazioniController.AddSegnalazioneLibro(segnalazioneLibro); }
private static void WriteSegnalazioneLibro(SegnalazioneLibro target) { try { StreamWriter writer = File.AppendText(_fileCodaSenalazioneLibro); writer.WriteLine(target.Libro.Titolo + "/" + target.Libro.Autore + "/" + target.Username); writer.Close(); } catch (SerializationException e) { Console.WriteLine("Failed to serialize. Reason: " + e.Message); throw; } }
private void buttonSegnalazioniLibri_Click(object sender, EventArgs e) { SegnalazioneLibro sl = _homeAmministratore.GetSegnalazioneLibro(); if (sl != null) { new SegnalazioniLibriView(_addr, sl.Libro).Show(); this.Hide(); } else { System.Windows.Forms.MessageBox.Show("Non ci sono segnalazioni di libri"); } }
public void AddSegnalazioneLibro(SegnalazioneLibro segnalazioneLibro) { try { WriteSegnalazioneLibro(segnalazioneLibro); ISession sessione = OpenConnection(); sessione.BeginTransaction(); sessione.Save(segnalazioneLibro); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public SegnalazioneLibro GetSegnalazioneLibro() { SegnalazioneLibro segn = null; try { BasicHttpBinding myBinding = new BasicHttpBinding(); EndpointAddress myEndpoint = new EndpointAddress(_addr); ChannelFactory <IAmministratore> myChannelFactory = new ChannelFactory <IAmministratore>(myBinding, myEndpoint); // Create a channel. IAmministratore clientAmministratore = myChannelFactory.CreateChannel(); segn = clientAmministratore.GetSegnalazioneLibro(); ((IClientChannel)clientAmministratore).Close(); myChannelFactory.Close(); } catch (Exception e) { //System.Windows.Forms.MessageBox.Show(e.Message); //doNothing } return(segn); }
public void AddSegnalazioneLibro(SegnalazioneLibro segnalazioneLibro) { _segnalazioni.AddSegnalazioneLibro(segnalazioneLibro); }
public void AddSegnalazioneLibro(SegnalazioneLibro segnalazioneLibro) { //questo metodo non e' accessibile dall'amministratore }